50000
245
643
112
115
209
899
155
437
524
496
703
855
783
822
240
172
176
919
577
840
988
806
617
183
450
868
309
888
989
113
220
537
385
723
421
137
995
200
60
208
794
688
930
430
675
239
202
357
649
429
859
487
947
504
218
860
866
529
14
683
103
219
941
55
255
363
348
501
60
929
774
243
696
73
60
976
889
851
358
735
154
693
337
281
419
987
438
942
12
724
250
234
838
673
410
488
920
721
809
834
689
976
694
289
267
539
798
155
913
492
462
361
874
417
194
671
848
301
852
847
208
450
115
690
995
343
716
678
291
125
801
815
652
372
751
606
939
167
531
290
91
91
204
937
765
510
499
24
703
948
382
78
746
488
990
121
73
968
789
888
335
680
912
439
99
5
694
233
200
221
937
177
717
663
597
319
323
673
427
344
299
182
14
766
196
852
139
837
141
177
524
659
491
965
994
386
804
46
976
890
339
400
197
409
609
579
975
206
708
630
500
284
418
736
892
919
533
395
862
672
136
256
567
962
156
858
698
46
219
746
883
645
480
172
167
360
177
213
669
741
1000
458
186
406
400
273
831
943
405
557
359
219
108
31
684
1000
218
50
34
809
339
258
581
372
270
872
762
214
203
748
479
334
345
663
988
362
25
548
995
404
771
485
922
93
563
154
791
917
254
631
486
562
918
492
24
992
724
25
878
196
532
342
227
556
162
86
783
853
979
886
623
151
74
37
128
766
677
382
464
573
109
978
189
802
5
112
463
612
339
127
95
801
768
957
152
311
152
264
929
667
130
865
549
782
736
354
55
824
962
338
324
102
872
654
175
526
204
285
580
975
966
877
839
680
151
991
762
960
217
437
155
269
358
940
917
334
405
826
352
211
283
752
738
607
558
908
506
161
649
985
676
799
377
780
658
126
810
295
209
107
201
556
732
45
910
621
742
142
433
301
837
71
16
749
269
999
174
202
692
488
990
734
789
828
420
525
36
435
546
141
600
624
314
164
340
255
694
619
794
75
411
154
174
228
280
605
984
61
393
538
442
20
396
510
933
923
769
436
727
228
4
392
9
510
124
50
632
869
792
772
860
549
195
692
699
371
963
306
345
837
153
953
425
615
127
288
237
723
649
159
768
681
712
379
889
168
173
288
924
256
899
393
276
53
478
57
308
859
945
372
271
198
843
415
703
317
833
536
620
453
8
559
880
487
177
819
756
893
945
652
809
683
834
629
597
226
940
316
563
384
150
382
527
265
355
383
396
134
743
315
590
406
821
888
996
577
650
529
91
268
217
304
719
698
194
831
820
890
52
457
671
988
426
166
602
354
818
804
91
232
196
727
136
397
900
354
68
908
542
381
243
501
824
922
922
362
433
869
638
574
659
527
1000
429
440
701
17
570
527
721
157
365
208
549
166
128
126
373
624
165
648
339
957
615
438
61
774
548
207
549
993
181
544
243
229
821
776
440
764
63
607
126
180
293
980
24
273
630
149
679
968
502
317
995
617
86
110
994
878
797
525
2
489
602
101
314
358
853
113
128
968
350
584
425
840
202
425
343
435
830
25
763
532
682
16
96
275
354
241
846
181
208
640
195
763
533
682
988
784
405
871
481
901
140
759
67
328
457
483
483
179
834
900
770
887
118
137
910
152
867
743
706
289
978
457
783
948
723
710
93
45
519
57
124
393
325
942
903
37
388
60
264
438
580
78
511
337
670
212
331
793
415
365
721
55
85
382
450
830
657
265
30
58
514
335
832
359
191
254
991
922
893
310
942
844
573
625
909
638
17
733
781
18
527
478
709
843
368
205
876
415
247
902
85
497
892
938
729
384
388
429
634
557
462
185
345
482
517
602
728
161
632
722
597
776
936
445
482
443
362
283
646
132
316
220
40
786
72
152
777
859
890
555
11
363
737
746
220
377
504
184
276
353
497
981
150
861
565
21
529
701
929
457
552
208
844
253
458
585
4
314
752
889
203
449
328
179
731
261
641
335
343
760
937
105
809
466
979
398
180
269
721
775
129
345
922
154
951
273
610
371
925
882
204
323
86
58
946
902
431
859
814
750
802
981
613
298
981
246
811
434
754
831
482
212
666
858
253
685
765
949
987
79
196
23
321
783
945
429
657
1000
1
138
842
699
189
154
974
232
24
90
498
655
113
886
626
297
171
569
28
85
112
939
988
664
930
830
714
832
688
699
109
944
426
351
10
441
148
298
312
270
373
366
586
137
408
665
917
922
202
704
163
265
827
898
67
372
522
862
188
274
959
378
299
671
624
520
177
586
204
320
567
112
18
757
549
519
301
560
143
540
153
938
693
885
830
981
291
861
624
656
494
462
189
752
123
587
88
745
430
385
751
795
240
246
131
708
861
477
126
738
858
446
272
454
689
445
98
822
219
703
566
573
607
140
197
203
991
640
164
885
298
761
168
535
713
934
547
856
688
991
995
408
619
80
190
279
883
972
995
553
896
970
626
706
676
619
436
959
932
744
463
120
159
857
829
284
926
796
940
184
188
291
418
204
166
131
266
604
852
825
408
539
781
838
773
151
120
664
929
103
357
875
973
350
358
47
89
280
29
920
398
48
692
318
825
617
892
490
177
620
473
234
263
474
682
218
470
483
533
517
353
740
561
859
655
802
994
274
24
391
310
659
890
120
329
888
639
253
168
620
306
123
215
40
590
139
3
445
370
85
216
653
948
387
666
989
735
597
509
577
668
248
318
750
219
797
194
684
844
820
404
856
633
992
793
761
156
740
909
401
577
846
403
995
264
127
572
536
233
717
676
606
767
351
555
359
842
322
710
777
205
853
660
300
431
646
128
206
955
433
83
378
632
4
980
890
841
425
716
714
58
551
726
573
977
402
83
449
486
769
718
226
661
39
932
96
60
536
532
185
320
860
635
824
81
483
962
337
285
235
759
146
582
566
105
823
401
378
157
205
947
612
740
59
533
824
486
17
567
488
558
121
157
221
468
880
73
663
887
396
963
244
565
441
87
631
577
510
375
598
422
46
265
133
281
323
894
642
295
936
30
875
257
439
87
131
297
216
541
286
870
356
680
812
516
185
942
553
763
814
399
849
884
135
426
143
129
968
667
146
459
112
656
473
679
485
56
753
140
405
660
125
502
858
81
578
422
692
403
694
686
458
118
796
696
334
475
564
7
804
233
147
137
146
417
981
580
731
751
726
603
593
429
882
568
943
910
874
989
800
224
373
21
808
372
195
864
707
570
942
221
59
929
790
332
941
500
61
860
922
298
651
422
796
799
469
281
723
259
124
490
835
95
838
949
20
151
782
876
722
88
303
403
620
327
847
317
637
1000
946
48
352
826
385
450
648
435
912
136
67
430
116
431
888
980
351
231
478
570
397
810
461
319
625
805
10
199
177
783
921
105
845
878
681
799
944
731
854
108
747
735
360
324
181
343
875
833
884
710
19
562
310
922
433
757
44
994
617
499
541
37
374
39
619
311
379
763
784
939
85
476
982
238
945
436
416
293
208
991
272
869
546
781
660
52
187
294
950
713
513
465
555
136
503
208
910
459
713
870
60
458
942
617
818
581
336
860
825
284
378
796
892
868
138
657
669
932
559
584
882
945
38
724
407
237
742
849
840
32
601
701
831
807
124
527
904
57
117
210
597
46
333
184
723
186
431
47
614
135
801
157
746
697
958
409
100
437
656
697
610
624
358
163
622
164
686
627
171
52
56
450
641
89
454
66
77
117
769
158
500
969
659
475
610
441
330
924
147
612
433
341
472
210
697
54
345
6
270
220
879
136
681
818
480
680
470
198
251
613
218
177
372
52
418
197
547
737
775
237
837
189
437
284
747
869
806
824
174
393
915
731
500
609
905
314
63
526
133
257
148
509
396
984
567
513
578
725
526
634
356
429
889
707
352
663
23
667
761
85
68
263
724
961
509
777
150
647
633
19
815
702
627
845
767
347
636
131
94
127
628
509
487
113
417
212
965
523
489
506
923
600
826
332
866
945
860
529
263
569
451
109
904
514
665
24
852
45
761
890
888
399
772
86
366
491
39
818
491
568
358
937
120
86
625
846
525
340
100
910
330
246
978
616
927
737
831
339
2
605
238
69
345
274
360
519
614
436
382
638
881
577
793
965
417
784
458
1
326
220
912
669
592
736
519
889
929
281
137
882
5
8
891
579
261
45
311
478
819
186
187
33
345
642
128
497
107
872
285
909
572
346
712
158
947
475
476
362
983
12
443
514
88
342
881
426
204
950
431
548
666
254
860
236
730
788
741
405
191
722
103
19
133
486
496
705
280
308
985
957
361
35
872
786
865
755
413
222
76
967
951
87
146
252
512
561
415
263
428
1000
66
250
820
264
617
916
580
774
163
992
517
433
565
412
571
289
347
352
882
44
450
746
478
509
429
823
247
698
491
487
684
670
7
738
78
610
10
445
466
792
10
432
129
543
689
54
640
398
289
846
315
170
403
457
391
620
251
879
476
167
735
943
990
287
726
260
147
779
405
396
18
463
26
565
490
491
630
844
597
688
499
674
283
911
286
136
268
593
567
319
465
595
307
159
265
90
158
498
901
805
439
150
422
255
210
455
823
190
801
20
86
923
340
772
57
66
697
782
875
147
967
53
414
319
663
532
505
518
495
759
187
456
509
218
882
979
952
454
979
752
458
678
723
47
55
687
635
196
472
521
537
196
308
230
82
984
191
484
598
712
46
586
404
36
691
262
812
195
971
527
127
123
50
41
63
186
520
926
668
564
910
153
533
894
251
212
190
460
575
617
579
200
284
842
430
6
457
474
944
407
329
772
904
335
626
158
970
370
581
877
111
194
915
929
201
391
41
122
541
759
315
133
896
831
374
728
575
672
849
424
521
507
473
983
94
680
412
909
594
411
387
211
710
400
607
903
246
595
43
342
647
442
101
534
236
57
636
632
755
217
147
352
897
411
729
79
416
143
188
225
942
463
326
756
232
287
567
455
126
990
341
135
606
927
451
56
387
913
527
315
888
505
749
275
277
790
543
973
656
349
13
103
68
170
138
44
662
188
501
931
345
623
922
751
595
299
376
752
582
254
171
44
83
205
320
940
630
146
665
732
150
476
630
176
941
433
332
637
821
812
347
703
874
296
873
939
60
816
10
972
1
475
541
551
232
976
651
246
835
633
233
811
921
347
43
365
707
388
548
733
164
86
881
964
963
49
683
258
362
658
897
107
122
842
273
219
804
773
212
153
780
654
898
40
652
16
971
584
421
819
648
446
561
931
756
58
80
264
563
461
952
249
955
834
121
942
215
351
581
617
26
598
452
436
946
291
714
202
419
657
88
23
442
376
716
602
777
456
99
784
744
303
95
919
311
786
426
986
392
512
38
648
944
572
215
794
491
228
988
173
487
978
701
632
542
791
840
454
705
938
386
712
818
333
853
839
348
343
439
354
644
952
267
117
827
720
709
321
334
618
164
164
164
687
299
780
784
157
823
551
113
169
976
752
531
332
631
441
71
237
635
633
378
142
778
433
699
490
947
993
2
463
9
776
551
388
921
409
275
24
888
192
977
46
566
140
355
639
740
62
703
812
33
738
381
397
881
498
656
496
884
346
518
594
28
157
908
591
75
375
928
419
699
94
489
529
723
878
827
911
31
662
433
43
483
966
659
914
286
962
703
802
600
642
749
522
208
292
147
507
438
813
453
904
50
20
89
424
357
80
50
378
549
784
915
891
131
456
599
789
521
620
336
497
795
811
41
370
242
425
961
727
804
982
348
639
218
95
477
142
458
457
413
250
268
523
731
44
953
407
649
345
502
323
907
342
761
371
985
474
448
988
984
243
618
288
196
889
433
894
735
135
756
487
599
885
290
67
830
290
676
670
360
63
535
118
223
858
131
988
310
827
621
116
321
138
826
697
444
118
118
360
448
43
555
252
294
590
194
694
287
324
48
160
580
369
8
270
512
770
1
828
523
750
452
975
122
65
143
204
670
174
374
938
813
685
98
15
206
667
747
132
999
791
266
899
673
467
275
77
278
712
407
272
349
642
534
223
24
740
715
909
612
767
718
468
327
694
38
254
320
26
190
33
25
854
473
165
700
968
383
291
453
75
510
477
566
621
247
315
178
317
550
775
314
705
453
324
478
567
105
927
384
464
204
125
167
922
45
772
838
644
852
566
143
373
800
128
424
535
221
293
202
962
502
570
508
779
985
908
699
398
266
268
905
387
445
590
678
238
987
450
709
942
573
704
215
81
71
525
411
776
480
935
24
812
737
218
101
594
537
426
163
488
950
489
758
64
27
671
462
742
506
619
804
38
737
687
361
646
582
23
894
732
522
103
673
185
833
455
493
271
765
856
814
417
621
549
59
443
44
430
104
193
885
205
185
608
339
938
504
866
695
235
155
107
49
537
60
755
884
629
117
67
623
239
309
362
918
908
442
582
601
399
871
913
292
745
548
559
361
572
714
727
104
604
931
838
46
137
144
755
979
945
381
48
351
614
43
939
80
107
743
894
495
896
860
209
234
280
591
7
666
531
491
491
390
878
785
895
781
97
905
337
863
705
237
673
410
69
995
232
145
241
502
141
867
707
164
119
869
153
674
566
102
754
695
46
776
834
600
851
627
271
388
607
807
530
612
299
851
746
701
860
273
601
195
836
680
795
520
536
407
177
488
668
661
492
296
868
819
578
542
159
464
477
560
359
951
61
878
981
990
701
347
400
370
494
6
974
291
175
654
728
500
275
626
817
166
323
814
28
757
600
560
313
744
990
893
219
135
975
303
401
460
462
259
873
622
585
611
482
129
233
353
246
657
23
100
39
50
776
30
904
923
840
360
641
718
558
382
637
514
302
984
91
798
507
877
676
648
963
288
90
351
88
299
879
832
221
288
867
658
405
695
64
907
761
441
623
299
45
692
851
165
908
829
622
510
627
905
905
586
785
293
109
823
367
870
289
793
764
780
397
917
217
960
351
863
499
4
173
443
611
518
985
757
296
515
948
527
553
546
852
483
483
364
585
387
748
759
338
52
884
587
428
410
607
137
250
147
689
181
828
258
508
65
590
254
600
440
268
246
417
510
326
596
989
917
870
179
614
717
602
702
43
796
704
131
982
426
450
393
516
715
905
487
15
852
82
50
744
869
555
495
681
965
634
152
607
222
715
165
350
247
167
594
49
152
95
637
45
527
260
791
721
634
430
393
622
230
361
319
200
210
37
774
481
173
806
802
579
17
484
436
767
963
29
41
39
882
27
926
652
968
811
191
368
430
900
122
97
847
848
208
124
533
291
305
836
664
19
643
212
330
694
42
197
198
257
801
913
644
249
306
525
618
751
237
719
443
462
772
639
197
60
657
380
410
456
706
999
502
716
24
906
167
978
541
977
988
494
73
695
72
671
237
52
769
865
581
327
715
789
272
240
394
482
740
406
446
351
344
165
236
928
541
133
969
435
363
738
353
902
172
279
797
588
631
947
181
668
812
212
881
785
80
829
996
156
562
95
648
301
328
373
435
235
204
949
389
314
909
584
886
224
943
675
599
607
882
582
538
155
51
401
255
415
540
569
579
147
778
839
848
605
300
243
930
599
923
608
303
623
499
748
762
326
297
418
586
781
701
866
202
815
16
878
389
328
251
670
558
790
526
764
763
553
374
313
116
363
84
277
281
625
836
934
156
803
409
65
748
607
813
838
779
721
598
532
272
244
566
616
736
338
469
180
596
607
716
317
15
741
337
846
777
512
506
797
450
198
745
638
691
68
380
896
750
723
270
672
305
147
55
363
331
801
162
378
743
383
582
689
427
300
977
984
573
482
721
985
820
609
293
521
661
675
692
877
886
23
290
665
305
707
501
938
232
646
360
628
561
939
560
348
810
362
448
946
661
893
604
594
889
278
955
558
997
337
267
258
289
896
287
105
46
65
458
866
110
619
236
80
46
872
253
968
524
524
130
396
107
538
534
333
813
257
861
539
792
11
231
882
124
391
377
40
410
189
634
941
371
98
503
610
928
649
920
815
560
605
952
361
976
698
54
262
515
909
136
790
886
774
562
727
85
926
878
466
7
2
890
775
551
618
847
908
863
487
21
885
51
821
711
833
686
827
526
962
924
403
972
22
432
981
441
909
847
569
704
377
174
136
769
920
493
594
604
405
254
180
85
309
105
539
329
418
624
886
94
831
723
614
577
28
706
173
202
473
39
987
351
254
951
173
285
281
193
5
438
243
877
870
461
217
583
374
846
415
916
771
825
850
668
349
744
298
997
793
537
241
698
776
235
508
795
540
264
594
185
873
298
55
547
759
205
290
965
815
295
926
463
937
308
248
944
656
372
747
768
191
360
926
339
728
728
571
515
90
831
987
125
36
783
268
816
256
50
99
700
88
463
718
808
170
915
738
556
221
696
273
379
605
264
100
41
605
615
125
489
629
839
443
685
156
713
558
82
767
995
697
377
480
887
374
311
747
711
400
882
34
30
861
281
529
519
944
660
698
195
395
720
415
589
840
364
987
491
291
964
578
265
208
182
124
62
903
531
88
982
874
191
634
969
255
861
774
85
450
989
464
741
551
876
994
624
491
586
457
792
436
804
130
903
543
810
629
826
395
517
324
571
490
25
534
516
85
197
656
661
141
575
362
173
429
39
404
974
567
232
295
299
571
580
646
807
836
622
448
495
555
80
345
234
629
714
290
168
136
701
846
572
245
898
87
406
474
831
548
469
737
966
814
872
414
999
311
85
331
266
822
565
768
414
961
393
743
682
807
67
318
590
869
321
968
404
154
236
1
458
521
786
145
370
289
833
682
650
69
384
912
693
671
619
550
717
645
367
38
908
977
799
462
534
290
431
380
497
980
173
995
539
435
366
836
708
863
838
524
387
250
112
439
407
80
211
636
929
342
753
27
310
232
501
802
441
71
985
399
354
595
656
922
501
78
159
86
550
752
731
117
266
345
632
377
549
539
645
218
355
954
422
368
83
223
348
98
487
744
999
940
94
300
958
327
903
167
333
298
469
259
339
731
436
827
456
875
226
23
939
16
749
476
993
818
42
678
254
999
581
831
684
419
414
777
765
892
639
779
348
327
428
102
799
121
114
7
83
96
946
955
585
259
492
84
260
663
281
389
407
547
762
855
423
494
427
191
981
701
479
971
648
443
530
507
848
554
677
653
721
29
989
283
349
473
198
589
228
534
900
702
45
520
18
475
219
735
121
715
712
729
253
987
984
988
294
139
424
252
25
414
418
794
543
249
993
925
968
478
723
554
530
711
448
713
289
749
334
558
406
861
510
671
761
501
884
340
153
556
475
488
759
409
904
89
314
766
656
178
190
942
696
740
916
354
760
538
724
254
464
447
219
32
47
272
603
546
819
712
363
118
667
175
22
621
675
646
796
616
689
16
199
387
658
984
861
199
919
876
541
3
98
809
990
563
495
386
6
533
107
357
415
477
798
334
586
6
416
513
552
594
783
523
845
617
986
39
129
928
65
541
837
208
736
986
198
672
178
11
13
419
721
69
13
337
439
819
376
170
714
421
674
202
240
939
671
347
516
495
75
974
883
842
77
569
983
757
831
124
918
243
979
605
877
195
179
441
626
941
363
831
734
635
250
906
836
326
705
390
792
171
593
884
372
61
641
450
383
911
926
577
734
757
616
150
379
814
115
934
849
366
655
196
411
131
382
758
276
328
359
344
653
680
379
407
244
97
24
458
699
314
522
238
197
338
291
366
398
476
658
106
43
392
936
301
263
508
836
897
779
297
92
382
805
247
644
480
114
187
288
501
735
555
972
465
42
200
675
742
117
949
683
289
162
793
269
740
612
171
561
825
369
48
612
720
915
974
424
916
782
131
35
624
602
927
299
32
293
479
849
429
461
567
81
229
753
987
52
747
648
308
889
399
332
146
722
536
8
536
805
414
525
211
786
666
483
259
300
647
490
811
678
446
326
465
274
913
575
712
734
422
332
820
716
904
225
452
846
826
648
751
249
390
130
906
949
875
556
828
211
210
574
38
962
4
257
22
752
357
347
746
190
109
335
816
265
174
528
141
350
959
695
335
945
302
95
375
261
576
778
689
642
49
767
274
523
128
342
547
847
720
728
189
129
692
916
437
2
707
948
970
331
711
115
709
463
280
712
932
280
344
898
935
308
777
353
829
165
864
234
694
896
937
356
297
855
365
233
638
460
30
487
868
437
233
276
163
250
173
741
149
17
243
567
32
286
923
752
254
369
761
132
544
639
510
342
946
429
232
369
655
871
513
486
111
73
490
335
154
330
4
998
182
228
767
188
170
599
902
410
908
420
418
948
459
909
983
130
188
315
768
107
553
410
750
429
502
380
875
466
818
151
993
346
232
8
393
526
15
670
212
751
871
616
192
486
100
507
617
933
76
553
896
381
197
997
727
94
988
111
988
736
305
887
707
682
542
237
890
907
455
551
164
965
778
214
552
679
650
207
819
254
919
893
240
203
935
860
450
569
237
114
222
920
584
979
216
357
117
568
563
196
745
961
799
269
533
618
906
772
39
552
22
610
470
691
99
620
708
269
447
187
108
657
68
837
448
600
689
403
847
985
23
214
67
401
846
69
446
347
237
801
180
178
637
40
706
721
2
340
353
692
556
846
342
351
404
748
998
432
467
80
211
684
566
667
91
372
407
217
582
63
175
651
377
558
400
884
771
963
372
895
676
628
470
722
41
191
104
247
453
378
176
462
70
348
367
162
101
590
40
321
95
236
64
664
164
388
155
184
937
291
3
872
858
213
872
290
161
161
28
289
873
452
50
365
2
627
283
392
610
733
629
580
200
628
973
595
510
115
531
789
86
620
978
763
377
723
367
149
555
347
127
106
329
138
744
630
911
957
822
802
855
478
254
699
124
466
438
555
812
204
398
948
427
53
311
185
488
721
701
282
943
915
928
725
718
79
300
469
942
251
879
4
204
877
820
667
81
336
825
295
936
441
903
664
412
798
190
11
597
415
739
854
954
937
715
361
916
401
721
339
90
683
813
441
563
860
840
301
913
267
769
804
625
433
545
300
422
186
726
430
850
615
500
723
567
768
884
64
140
901
599
776
317
262
921
678
788
107
149
838
62
641
526
403
723
531
276
954
441
949
581
840
143
589
526
369
1000
765
845
39
72
627
547
630
891
539
59
598
673
949
398
73
486
811
840
915
245
105
601
881
189
801
161
35
885
440
859
249
764
866
762
369
929
406
998
454
24
492
761
255
697
222
345
306
130
515
796
280
429
631
556
428
135
925
213
918
44
170
435
545
734
464
466
514
805
564
751
247
868
639
561
315
92
508
231
400
803
109
215
301
788
227
727
724
655
679
919
489
637
350
918
438
579
900
315
737
115
793
489
162
102
565
203
545
301
587
109
166
822
614
958
988
225
681
875
406
945
199
81
975
430
651
352
482
517
625
314
828
536
316
244
578
522
776
92
753
639
478
713
562
117
200
96
994
550
306
286
726
742
800
828
597
264
220
527
409
141
760
3
607
626
292
911
844
597
246
533
544
96
450
472
645
891
427
802
1000
818
799
12
342
697
881
947
779
128
364
766
38
998
163
392
79
203
1000
320
393
296
143
870
618
496
784
626
959
132
244
377
501
751
534
240
586
805
483
994
785
938
515
996
30
772
546
742
973
219
630
466
32
497
863
82
612
182
795
432
186
108
538
142
949
35
267
324
192
468
259
320
289
850
706
143
71
930
804
535
958
80
279
876
611
389
92
901
172
956
610
578
642
439
255
521
240
399
668
221
314
659
646
149
494
29
676
688
123
430
25
10
133
514
228
771
793
2
369
848
274
643
6
341
628
417
133
411
3
146
353
151
473
220
359
957
50
155
790
783
724
424
430
982
57
85
547
431
526
772
112
993
8
113
165
484
445
210
395
355
908
640
605
556
434
902
997
416
225
298
829
222
987
676
476
106
807
564
167
100
269
489
727
789
157
875
222
447
186
207
698
898
495
515
852
464
401
262
551
387
266
527
555
677
201
337
367
561
735
461
850
480
738
960
91
705
206
579
417
89
722
280
523
382
229
649
118
896
31
385
961
520
672
654
422
674
478
310
869
96
568
450
862
496
582
331
985
215
986
175
547
769
752
808
410
185
931
752
195
481
877
936
312
780
535
289
422
430
434
180
920
784
150
56
499
331
883
552
801
85
213
991
628
276
710
283
237
220
65
903
741
152
189
925
958
40
474
422
866
361
995
698
952
1000
400
872
466
851
13
364
538
59
687
275
288
61
508
846
998
698
937
1000
686
106
682
868
162
718
995
141
607
752
132
458
183
876
70
207
522
937
68
509
857
73
436
189
110
20
9
20
134
179
601
776
108
613
330
601
920
244
579
740
212
612
567
699
482
262
342
774
46
262
757
702
177
743
280
667
612
733
261
780
771
325
488
511
9
837
807
415
805
658
23
278
145
103
519
910
893
905
41
830
880
178
834
877
391
265
376
597
722
446
269
546
36
106
73
858
68
217
985
917
118
770
826
297
631
499
498
270
84
13
159
785
476
786
94
301
818
296
144
579
277
196
251
578
801
465
673
79
502
401
810
11
47
873
6
139
828
487
121
835
364
169
169
760
939
501
661
605
342
403
200
110
202
675
499
984
509
824
156
737
907
6
223
269
767
537
941
731
803
63
317
776
83
863
737
438
562
37
511
220
479
670
130
454
131
125
425
246
473
87
262
830
428
970
915
369
840
472
592
619
100
413
119
214
369
992
727
147
832
359
578
535
369
682
788
912
975
846
903
710
132
515
252
294
983
63
246
10
553
292
872
267
402
760
6
782
735
257
132
403
156
227
148
264
899
457
649
539
215
763
818
475
983
574
460
486
341
235
560
533
689
1000
632
201
670
226
165
977
854
728
557
819
926
904
114
45
584
272
611
135
912
473
124
393
490
773
56
320
287
120
361
1
920
751
77
529
550
46
308
285
717
313
884
724
846
288
806
691
419
336
432
663
164
688
309
671
232
89
683
700
202
276
2
873
72
433
232
718
414
158
957
515
206
479
526
386
782
561
269
765
745
567
582
191
712
709
630
364
657
337
198
474
91
714
262
666
277
813
386
373
223
94
85
529
151
464
604
760
22
949
917
824
336
247
276
981
421
824
910
808
284
823
199
604
396
65
750
448
3
630
524
37
6
110
123
795
38
632
868
576
366
758
101
703
330
148
289
810
369
284
846
353
714
287
788
299
710
653
259
292
177
945
269
891
786
542
231
520
781
604
459
841
52
939
697
429
712
684
780
22
299
332
784
508
517
398
662
626
825
134
754
161
953
96
742
108
21
868
801
185
382
721
208
274
401
768
801
232
764
447
97
245
145
63
511
308
564
89
808
654
410
150
676
962
353
900
222
648
292
630
858
923
506
681
66
179
235
210
836
895
826
54
114
260
201
103
112
537
420
989
624
725
751
647
838
49
586
393
785
715
726
896
232
866
885
581
851
328
165
724
997
764
1000
300
581
12
717
334
276
312
475
286
438
819
532
559
641
850
315
834
47
444
189
477
642
324
209
712
98
961
667
465
491
489
616
858
151
916
69
859
25
955
601
956
141
361
589
601
425
888
290
258
345
863
936
591
920
640
340
221
81
849
339
741
693
960
293
111
768
253
513
704
922
397
241
260
412
449
289
575
692
831
730
889
377
667
30
645
170
117
216
45
413
15
527
158
511
174
251
529
442
105
145
214
873
28
833
210
909
241
912
325
516
737
95
173
724
890
481
787
897
621
145
515
642
332
25
120
775
251
640
221
292
16
457
315
658
636
62
497
99
409
636
759
663
891
375
361
482
519
942
855
526
804
381
736
355
676
461
594
434
651
306
235
379
565
583
837
510
255
793
518
733
509
677
717
646
302
545
990
613
257
168
745
921
466
436
540
749
298
740
295
924
485
52
390
57
734
234
78
751
292
801
367
287
411
887
868
862
382
429
130
828
837
437
369
478
213
665
234
810
741
250
862
488
410
334
727
816
257
297
504
809
804
852
997
552
353
729
219
237
848
605
444
310
137
863
63
725
339
104
218
518
51
710
577
462
481
884
187
589
508
767
664
31
307
109
593
738
187
566
524
816
840
841
607
584
139
428
529
700
691
138
111
288
999
240
260
573
875
65
808
494
895
475
809
608
265
585
560
193
424
430
852
475
91
540
358
293
897
221
600
712
594
546
938
650
228
635
557
36
678
971
397
938
635
523
766
979
650
64
475
457
745
140
758
250
837
733
829
440
512
837
752
764
621
133
871
283
128
918
392
885
125
554
509
126
707
700
727
800
998
681
81
635
664
767
477
849
178
484
304
288
501
923
551
57
567
239
964
516
925
226
742
186
347
891
794
669
945
372
652
684
256
541
542
898
523
789
633
860
80
663
139
316
314
412
442
62
291
255
505
870
972
48
428
663
799
28
897
884
981
822
580
567
820
132
19
53
808
158
269
825
502
384
510
323
900
453
656
617
552
781
246
960
42
442
85
472
540
417
58
463
73
700
580
652
191
287
154
827
663
45
969
694
127
981
422
180
408
57
447
885
537
799
69
459
702
699
62
674
136
305
164
491
661
581
631
824
558
673
617
763
824
697
527
59
888
769
787
402
638
923
594
708
441
332
347
350
757
671
950
345
639
365
972
71
42
662
461
909
6
231
356
363
338
456
819
346
990
210
389
466
905
815
816
466
677
937
759
836
30
110
717
330
745
930
412
76
120
337
22
539
947
540
252
37
88
383
166
483
768
478
751
523
967
287
867
445
724
522
587
449
476
992
729
670
411
534
433
643
60
294
264
239
633
803
244
301
633
644
796
533
811
447
225
289
379
650
714
41
24
246
547
170
897
836
296
606
803
994
696
488
599
863
620
76
945
794
36
469
472
790
219
862
61
939
927
445
434
671
889
433
792
372
334
929
58
169
425
143
926
474
694
798
720
647
560
823
910
613
17
831
473
238
754
227
375
887
313
682
234
488
593
973
112
347
538
707
302
994
556
229
719
745
147
146
944
358
967
751
470
687
733
990
757
110
765
562
157
333
43
888
256
360
472
575
580
367
349
618
652
720
612
216
330
112
768
997
697
463
754
808
587
764
615
479
39
815
571
669
527
337
118
967
595
79
575
766
396
757
382
255
105
515
412
297
836
449
8
270
997
641
435
12
373
210
965
683
463
895
555
458
109
475
821
990
846
822
801
724
837
612
186
688
543
866
452
56
860
569
296
775
941
865
577
400
201
166
937
810
511
158
85
700
993
821
44
903
58
607
207
327
654
695
959
593
998
51
405
528
342
414
891
109
140
80
50
40
588
614
44
306
403
155
454
571
393
346
347
113
129
282
689
411
195
673
338
146
191
852
272
815
288
739
406
937
321
27
413
128
742
237
205
171
594
521
697
216
943
766
706
318
410
512
756
227
10
62
626
412
922
822
311
162
315
790
386
544
723
473
638
460
326
680
156
69
330
465
993
390
167
340
22
540
947
529
319
997
633
559
14
382
560
178
233
970
121
33
544
489
773
474
68
598
182
275
583
379
618
67
296
677
818
171
842
328
29
209
196
751
752
26
553
853
602
496
109
638
523
155
992
166
230
126
2
284
621
359
470
828
363
695
272
909
570
851
351
336
506
506
779
776
890
790
294
285
574
562
156
630
967
334
471
363
411
907
524
959
729
174
438
917
191
414
508
185
434
235
602
542
801
12
41
364
874
750
967
977
56
634
423
848
90
275
484
283
430
670
568
793
411
588
398
484
472
487
944
374
200
855
26
481
806
753
439
301
452
435
251
592
280
788
502
429
540
296
46
753
173
773
119
319
1
170
343
120
679
189
716
242
188
880
333
478
222
397
943
14
163
586
293
497
722
795
625
223
753
720
584
77
848
308
302
374
852
519
487
649
151
546
367
95
501
528
14
173
309
297
980
403
598
103
633
644
849
813
384
367
813
919
33
688
606
27
192
315
789
156
555
577
241
840
92
649
624
893
693
548
141
924
72
325
463
416
196
647
205
24
531
669
938
766
519
271
170
690
448
502
189
881
922
190
163
827
92
604
769
179
258
122
318
167
789
549
251
768
447
669
510
327
783
680
978
238
615
856
309
658
941
900
57
976
578
986
885
85
964
512
202
633
218
19
864
236
526
808
893
203
88
877
178
95
754
105
519
122
241
935
135
382
345
986
838
338
371
882
258
715
321
649
627
806
264
431
992
571
253
568
649
760
694
925
599
55
955
191
492
506
688
439
918
936
458
806
115
365
385
79
248
7
788
758
384
376
827
514
300
763
751
506
352
923
76
77
225
324
581
138
348
80
266
403
233
808
567
816
487
188
808
411
984
52
951
253
399
330
239
630
784
480
411
198
312
356
968
98
636
316
641
902
993
761
499
668
780
458
542
202
70
515
536
135
291
880
699
879
618
424
892
803
134
359
926
826
667
156
358
938
180
485
598
518
181
577
642
622
162
146
607
381
728
910
296
25
778
348
530
415
921
163
462
488
445
568
278
10
537
305
51
846
472
970
146
262
887
702
407
746
688
544
86
88
787
284
267
35
110
401
402
646
891
844
225
968
987
98
417
399
751
644
433
218
885
755
788
936
906
893
933
820
938
367
246
272
622
415
397
674
394
744
151
381
134
594
393
735
654
12
467
963
211
230
710
517
473
943
419
650
709
294
786
964
529
777
769
160
745
483
919
721
222
752
27
480
530
634
421
263
638
543
466
701
21
806
773
35
551
374
950
79
477
321
958
510
859
977
230
619
881
582
357
496
314
258
157
357
600
475
929
102
288
7
105
616
36
956
816
715
998
782
647
635
976
411
252
691
740
772
380
488
4
143
38
507
579
876
926
369
546
249
511
735
104
142
182
730
206
355
326
981
365
542
721
514
380
747
929
768
745
742
714
335
275
606
808
578
334
381
475
475
113
116
832
437
392
448
86
789
746
436
923
649
703
919
204
33
193
966
956
839
432
86
930
655
815
477
865
826
869
169
416
228
149
548
125
678
55
525
600
842
192
779
330
992
247
641
397
338
746
175
568
471
655
180
475
858
478
609
557
223
752
788
759
614
342
167
103
339
151
109
931
146
940
800
224
897
298
179
13
70
291
20
29
236
901
181
461
235
968
264
769
256
248
469
718
890
114
844
221
994
137
201
598
602
758
731
494
542
804
767
934
988
78
936
98
285
97
399
316
833
372
382
641
776
568
509
485
328
38
652
541
972
25
437
350
710
721
223
933
908
278
85
469
813
610
482
911
12
192
833
268
896
964
6
691
740
894
683
954
220
860
918
810
98
128
497
23
803
514
871
801
445
191
617
238
480
164
677
92
825
328
467
310
205
380
172
889
778
867
756
677
521
388
792
121
361
686
284
854
795
974
574
328
454
529
882
710
412
436
318
714
385
33
927
440
691
845
427
147
419
776
736
351
7
573
644
835
483
706
718
136
489
478
601
313
572
171
320
701
353
201
871
524
942
92
636
954
568
407
333
611
293
80
300
708
333
325
227
654
470
928
302
276
638
274
249
899
154
835
589
86
716
917
988
249
496
942
597
514
383
354
169
279
664
286
957
259
926
782
516
357
630
693
961
318
431
187
433
356
165
385
342
26
82
586
73
558
113
914
825
642
352
198
205
707
962
588
501
241
392
972
754
477
514
175
597
987
935
510
403
800
257
488
675
282
865
287
103
169
965
709
852
775
509
370
674
189
838
534
639
230
144
807
495
97
444
667
246
821
482
763
79
843
564
304
442
542
101
416
513
71
194
986
422
872
695
447
197
923
133
434
886
531
362
672
28
929
989
75
744
152
102
881
37
391
584
66
321
914
509
868
839
947
421
267
245
755
902
205
916
719
182
586
27
699
440
834
819
85
818
208
431
532
14
219
723
909
214
526
633
132
378
4
367
488
52
847
172
623
453
340
918
471
973
891
496
60
746
15
515
193
531
3
95
485
570
603
222
567
490
189
696
878
942
671
13
590
160
702
295
991
155
751
80
583
47
812
726
138
277
788
37
845
16
55
514
487
932
314
233
515
206
6
584
851
313
503
743
610
575
735
297
986
598
38
636
812
135
661
927
381
747
732
226
417
263
862
49
124
732
387
453
371
498
457
64
30
472
222
729
833
949
744
604
640
883
161
199
311
878
170
720
26
855
279
441
823
664
875
994
392
411
881
932
654
602
837
985
739
14
7
957
503
508
367
707
474
837
875
330
699
420
594
698
989
78
537
680
591
228
278
834
52
304
695
978
359
169
865
252
830
950
699
718
778
397
990
63
360
946
712
685
121
971
580
180
247
195
558
559
778
207
443
957
229
517
802
384
705
73
693
792
602
657
40
349
189
43
871
141
76
341
554
589
822
558
402
337
500
112
605
94
299
633
540
222
19
133
973
930
817
680
793
608
856
71
360
475
777
960
32
570
71
21
481
245
883
432
816
150
181
603
410
977
884
853
396
563
471
359
687
113
426
378
470
475
677
297
295
779
508
45
153
903
292
581
764
63
621
629
625
570
169
16
886
22
20
83
160
657
645
291
753
482
473
815
835
679
344
833
381
847
961
776
474
199
208
346
843
197
901
361
125
326
780
59
508
989
715
195
747
220
657
9
538
395
126
4
359
609
647
844
843
994
17
80
932
758
268
504
542
538
502
83
997
310
641
959
402
221
855
392
590
354
419
625
803
951
855
620
599
872
303
20
159
938
52
972
835
527
787
946
492
492
871
114
749
37
734
314
141
378
809
516
728
402
797
82
720
412
739
72
363
563
729
245
860
927
185
178
676
249
542
88
673
906
785
776
588
913
201
230
72
119
131
480
230
780
851
296
329
55
438
981
366
994
91
774
371
66
520
580
643
880
837
665
262
967
841
882
853
299
267
612
954
78
64
688
835
509
235
700
504
790
117
776
278
903
128
907
721
261
240
738
720
919
865
393
492
959
196
313
670
524
684
606
510
633
8
727
860
804
274
597
218
71
230
424
956
174
530
970
724
624
697
940
710
199
918
513
976
76
861
75
345
134
81
803
20
517
942
929
651
167
164
449
422
126
121
858
225
797
212
393
705
853
509
74
220
553
722
619
355
833
893
439
92
82
357
881
327
750
339
912
698
218
43
161
879
397
12
148
693
757
589
323
790
271
275
254
549
547
971
994
396
982
890
837
176
142
214
633
573
514
318
594
872
354
602
377
865
248
535
665
422
885
369
36
301
462
694
572
195
479
19
40
778
722
565
796
864
337
570
598
852
869
199
800
485
891
394
575
361
516
417
992
347
816
185
166
497
776
326
109
292
50
783
700
63
276
756
275
159
540
363
131
876
83
74
995
113
603
812
404
556
490
6
265
116
605
419
706
765
905
244
251
599
564
262
550
695
775
907
125
195
125
880
683
352
778
611
603
639
173
765
670
212
572
575
659
2
946
649
400
806
161
929
320
885
200
395
599
569
234
75
26
329
133
964
243
193
393
238
63
628
634
839
504
510
964
106
135
443
773
362
839
495
762
942
678
493
751
749
344
635
29
895
70
4
741
230
945
8
74
743
366
480
472
294
593
713
699
403
20
553
30
345
294
206
61
815
549
35
480
976
901
727
940
769
890
922
172
139
428
748
858
317
525
134
840
863
233
996
752
652
215
453
210
446
697
125
26
573
39
573
174
818
265
776
780
145
907
341
900
474
313
70
247
565
260
374
602
239
251
720
34
307
45
795
353
800
360
492
854
205
168
184
367
356
538
746
325
892
837
874
272
768
691
707
38
520
749
383
434
288
489
202
217
708
640
526
50
68
735
341
457
692
820
700
233
306
118
111
652
518
311
491
338
409
936
648
18
473
563
908
258
243
539
159
20
655
372
125
685
848
271
273
685
561
79
849
708
770
281
179
865
555
430
678
583
140
364
965
43
314
439
675
337
51
726
110
85
724
846
408
310
898
912
990
272
692
189
771
425
361
557
832
235
921
47
211
160
888
855
547
962
681
976
804
153
787
420
216
155
564
386
407
477
111
802
195
342
847
141
71
345
238
913
250
939
194
23
371
376
476
406
270
771
124
687
796
556
65
721
228
96
84
936
325
528
941
558
64
232
100
29
643
800
395
464
583
518
586
324
586
130
821
937
991
972
789
558
647
471
759
509
91
537
740
213
25
151
572
121
792
776
835
596
390
663
488
366
749
531
649
719
83
865
283
818
353
413
662
667
734
573
858
230
363
217
269
165
742
318
29
857
469
336
19
859
260
999
869
373
494
118
891
789
457
716
808
265
921
292
215
427
101
919
340
331
815
258
428
242
322
990
705
419
119
228
456
610
80
57
314
736
668
528
222
804
769
402
129
485
238
350
862
69
985
286
140
850
781
818
974
529
156
141
63
107
139
892
485
213
739
953
735
43
661
335
280
73
154
496
727
577
581
5
649
392
433
139
613
303
958
771
67
376
608
392
782
615
987
399
901
511
516
971
712
889
125
122
426
846
582
559
702
263
386
385
830
153
874
883
973
986
562
516
370
694
944
142
759
542
465
328
64
635
802
915
278
388
730
887
800
310
595
544
285
886
844
316
979
238
485
622
585
763
926
978
685
184
151
116
970
898
134
147
409
156
623
222
975
384
42
629
430
30
250
720
910
936
394
882
970
441
412
681
15
466
931
494
620
196
399
526
565
896
319
359
21
292
767
824
781
722
937
558
720
149
267
623
353
305
623
408
222
320
226
393
565
426
471
838
996
657
680
364
409
781
660
861
269
227
264
272
610
173
189
255
154
520
553
472
736
35
885
912
275
413
813
691
213
475
783
973
180
297
475
114
413
678
798
44
800
784
55
868
352
149
165
488
700
260
334
58
977
762
392
402
433
852
614
322
737
349
506
481
569
626
470
995
919
596
681
820
922
588
65
935
749
426
698
304
625
739
395
669
689
247
457
330
836
262
12
81
649
643
314
805
970
946
32
661
791
971
825
895
574
767
532
68
81
263
911
965
389
542
117
874
358
672
410
218
300
224
67
84
305
830
170
18
611
639
933
816
451
307
19
3
41
773
723
377
892
132
26
910
156
284
553
682
74
473
354
668
72
724
62
79
576
107
932
944
566
794
94
905
910
810
384
218
89
982
649
645
549
809
49
949
232
754
950
178
371
805
19
341
788
468
568
167
715
242
129
889
175
2
962
795
320
934
207
624
124
871
207
930
143
89
506
218
280
928
521
280
847
828
915
843
480
16
744
885
510
67
524
938
220
989
550
504
41
885
212
484
75
324
866
852
781
78
693
928
858
628
15
909
387
717
44
853
532
954
793
443
621
161
11
736
168
811
679
509
349
165
142
368
818
488
860
706
242
413
34
314
643
265
921
479
902
120
925
744
706
861
79
793
21
19
266
710
228
298
414
184
881
962
608
368
514
599
782
19
427
44
746
787
422
321
72
115
179
721
712
54
431
146
501
212
90
26
704
173
922
11
579
431
730
988
653
410
267
657
797
691
982
148
475
159
757
428
785
367
286
811
606
921
232
92
538
339
325
982
546
376
883
294
611
150
880
134
205
527
331
241
958
66
693
910
46
112
25
276
838
796
611
766
828
748
396
33
189
780
421
164
322
422
799
881
713
584
43
545
238
561
944
457
310
460
566
362
362
255
638
584
340
580
498
70
697
574
500
516
917
321
432
570
442
528
814
905
586
877
81
697
516
750
180
171
557
112
56
654
258
157
612
233
399
787
969
86
322
676
709
425
135
915
313
313
525
918
831
840
79
773
505
906
580
228
82
535
846
891
473
3
699
204
32
970
846
217
389
555
127
964
797
53
406
831
224
637
187
761
639
897
371
286
951
543
626
753
937
897
207
582
799
822
384
872
782
162
124
702
585
826
121
411
164
843
116
634
890
187
513
493
205
249
52
413
295
308
323
100
717
842
634
203
542
318
322
328
638
391
1000
645
152
243
272
312
662
969
668
127
775
601
739
234
603
139
847
818
420
759
448
66
502
556
527
998
625
766
721
906
330
683
144
670
187
567
225
371
660
334
325
729
831
298
117
1000
873
541
461
572
266
21
891
293
422
471
905
585
729
193
972
850
904
773
236
89
425
11
202
635
64
225
495
258
771
273
583
283
567
600
717
812
533
138
554
278
695
550
310
312
624
781
183
174
264
793
546
572
794
302
124
983
163
557
756
604
45
950
402
595
742
139
904
942
613
365
800
645
373
315
977
949
782
956
582
955
83
276
739
499
409
652
602
941
911
11
185
306
893
189
811
577
531
186
522
54
71
506
721
393
630
99
769
388
278
632
12
655
235
997
274
210
352
492
122
792
368
506
606
668
944
354
111
862
158
393
434
118
656
234
118
804
849
575
300
450
718
701
766
474
766
717
392
856
785
979
876
493
215
519
66
70
92
80
891
791
965
800
681
693
746
623
170
216
945
690
708
518
613
80
998
974
756
647
393
114
760
948
90
254
711
212
301
821
416
712
584
389
485
55
336
159
626
363
667
819
416
241
944
396
456
289
247
389
294
53
248
457
246
270
141
894
579
782
609
936
237
979
492
581
995
498
81
289
305
959
781
529
132
751
732
636
732
200
496
415
608
880
795
204
113
989
41
668
807
995
874
604
71
876
158
421
322
28
703
592
7
307
539
952
390
258
188
767
866
423
829
785
849
604
453
545
8
150
641
599
335
701
246
625
938
353
109
126
90
877
43
888
992
242
46
892
644
888
243
593
814
926
737
248
188
72
176
787
46
624
687
170
186
379
450
161
988
714
260
815
425
881
291
847
356
236
381
237
88
509
785
551
976
628
786
671
872
305
414
699
223
186
970
504
264
156
48
82
885
317
91
863
648
322
344
159
582
102
965
569
134
844
681
983
978
485
799
895
760
321
646
244
82
807
884
414
220
281
148
323
880
758
834
77
390
877
752
892
244
916
147
23
620
88
921
396
997
113
763
564
844
86
819
739
466
367
525
229
759
354
30
51
822
138
463
633
708
666
778
533
773
693
501
222
255
787
106
842
48
517
763
511
713
199
517
622
934
879
488
436
482
115
870
503
664
988
736
16
223
353
890
607
516
626
778
321
686
100
584
668
831
626
746
178
116
385
225
181
485
932
117
158
757
850
398
52
190
332
172
21
53
344
726
985
527
421
232
906
120
866
251
999
996
403
463
461
455
721
90
916
262
467
784
771
626
124
627
738
639
883
899
593
898
613
379
682
918
696
587
979
38
774
369
794
550
942
204
636
736
925
787
868
528
466
793
727
219
851
399
751
370
883
964
817
365
330
765
88
680
848
647
308
739
493
1000
671
922
415
578
31
235
396
158
804
457
720
422
281
476
650
822
521
479
371
981
750
55
685
900
7
475
287
606
290
622
377
807
875
140
648
341
93
318
680
478
826
910
311
64
649
388
753
30
426
697
123
793
855
222
679
484
967
268
14
294
182
416
414
502
884
995
383
694
591
824
970
661
352
601
37
781
763
435
330
425
694
166
18
973
769
541
494
908
352
49
216
968
687
996
978
183
545
798
252
231
698
509
390
816
43
749
892
93
353
642
758
896
484
9
516
616
398
488
934
835
469
463
858
315
831
954
790
276
400
367
158
687
239
654
763
201
593
942
228
599
523
867
847
307
636
102
931
26
995
243
964
997
480
193
735
641
214
708
316
246
46
36
393
113
497
37
384
469
817
994
166
160
44
840
493
935
44
894
243
688
589
100
342
941
404
306
989
612
581
524
469
290
631
713
563
885
6
155
98
95
233
87
949
816
90
269
561
286
60
377
840
701
488
812
690
563
519
304
400
738
47
905
615
308
218
806
191
841
705
195
317
845
647
575
574
83
241
56
829
622
166
470
606
359
940
918
675
2
52
217
283
441
623
226
51
433
165
849
885
231
968
189
75
569
344
101
393
505
423
329
693
444
158
131
510
702
442
161
286
99
789
120
769
735
216
28
989
605
409
75
339
811
248
583
518
720
342
769
630
247
682
43
918
384
520
487
609
784
622
260
44
402
812
510
1000
121
593
6
841
985
713
527
500
746
32
718
840
652
644
152
771
373
961
430
166
329
544
625
5
554
636
534
670
347
770
425
985
644
247
511
498
659
534
609
546
969
703
862
612
210
72
546
564
475
263
758
274
398
808
967
591
73
796
443
162
315
517
485
11
907
403
923
870
943
47
773
49
389
558
21
526
527
157
534
438
922
282
87
453
818
691
359
524
148
653
473
897
434
792
965
295
57
889
390
34
224
718
287
764
563
351
778
227
792
420
230
888
261
101
771
455
371
788
73
56
783
451
378
476
964
178
471
761
536
198
818
723
5
684
32
968
886
840
722
558
826
822
138
141
368
928
309
373
243
337
567
139
565
917
431
88
148
430
436
102
895
645
737
832
573
519
384
452
267
755
913
353
235
741
930
260
869
604
342
109
487
121
478
96
75
801
275
750
65
920
716
263
727
109
545
421
945
101
9
361
298
694
454
87
701
691
823
770
570
731
674
522
734
231
319
244
367
705
945
32
959
932
447
638
590
411
577
128
214
64
500
227
758
404
518
324
604
376
330
355
54
276
138
498
203
237
966
850
497
58
68
44
561
520
904
554
230
706
143
603
384
790
384
753
223
193
581
30
291
518
535
6
680
374
483
139
499
809
427
654
789
639
135
618
247
245
616
142
758
744
458
38
465
245
954
22
890
256
500
54
412
47
909
434
825
519
344
459
620
733
306
815
847
241
156
470
943
855
664
151
602
656
64
615
489
904
487
751
945
669
799
471
221
22
46
25
835
200
460
409
875
433
294
785
533
944
1000
532
195
687
584
322
366
247
211
183
820
149
563
158
814
466
980
801
628
846
787
717
201
918
912
235
770
217
604
384
687
501
239
605
649
436
693
912
761
230
227
63
210
216
440
698
474
949
260
240
635
237
24
583
275
430
195
197
857
130
946
297
362
556
151
914
968
453
397
306
979
958
667
874
995
562
615
69
886
551
972
801
978
523
580
894
745
22
866
316
946
766
9
12
617
692
793
920
926
703
91
796
274
550
30
831
103
720
529
377
591
745
617
172
596
2
734
887
790
783
47
53
133
169
578
842
456
490
903
2
531
732
28
293
209
787
855
914
731
827
972
956
737
100
529
569
88
632
750
362
789
282
274
698
681
454
251
35
374
233
971
165
897
525
163
149
930
60
439
611
583
24
356
142
201
51
928
294
836
353
138
276
534
299
138
477
590
723
80
693
564
996
938
290
668
335
450
678
983
72
959
126
432
849
677
809
287
41
463
563
298
352
399
703
212
574
793
671
685
510
459
321
589
878
748
125
684
394
783
947
178
932
179
722
36
972
383
71
921
377
581
857
259
619
76
754
683
575
172
658
835
885
343
678
909
950
950
974
42
971
258
285
688
308
681
760
837
282
344
721
532
902
979
2
766
239
134
94
633
212
111
358
606
600
10
903
492
630
604
68
456
606
93
252
449
578
196
689
726
390
780
207
60
174
463
595
972
578
570
87
27
404
986
640
538
540
132
995
777
477
270
690
608
43
58
466
299
251
94
524
595
217
763
778
605
860
850
85
203
467
123
208
176
373
804
809
76
310
756
648
338
184
727
350
854
620
450
571
598
43
608
357
679
450
680
94
431
655
211
734
558
484
862
475
397
916
529
887
780
576
979
203
273
507
579
566
533
979
224
1000
611
935
114
244
447
756
199
116
207
378
326
1000
90
451
199
210
213
75
264
117
462
356
55
401
403
177
932
338
397
559
768
986
399
335
488
331
738
712
955
940
681
743
434
540
457
776
599
661
890
252
853
768
534
951
498
911
203
733
976
845
51
379
914
653
946
928
878
156
812
502
958
73
91
607
473
225
970
23
642
542
890
934
421
354
533
660
92
326
389
104
93
358
206
485
930
428
592
869
570
587
633
585
622
215
684
158
275
459
553
923
946
944
810
488
681
357
763
42
749
744
608
32
300
60
436
65
687
378
864
601
249
32
384
870
621
694
371
248
685
247
493
920
366
976
856
878
131
785
20
321
533
21
651
168
640
731
78
467
633
525
472
962
329
59
120
88
937
924
7
665
694
197
967
768
366
586
58
802
583
515
989
526
75
863
214
734
500
903
788
708
276
661
630
344
708
678
730
972
485
12
885
661
416
875
733
961
328
296
139
850
80
216
60
4
727
673
859
288
530
147
139
410
225
727
845
325
798
675
862
509
479
769
626
538
771
553
610
314
940
42
58
409
728
584
847
549
120
625
364
476
502
53
890
527
382
376
688
956
498
560
719
352
934
30
159
838
506
82
874
502
735
884
507
581
192
858
66
270
624
714
628
185
814
336
4
586
973
719
305
137
993
744
661
934
883
131
633
8
388
922
273
530
264
445
390
940
823
626
715
296
487
926
169
185
353
880
527
603
354
487
574
749
1
783
40
328
911
829
404
189
327
579
110
598
121
76
271
911
694
780
266
545
838
813
987
260
140
687
76
520
424
261
531
594
178
60
853
199
999
251
17
751
933
337
760
783
94
584
122
136
773
929
110
464
934
345
9
907
81
647
55
906
913
33
679
732
359
169
211
872
297
401
205
772
656
3
150
209
975
103
36
550
395
765
138
924
369
893
99
115
982
188
861
944
28
413
70
354
256
18
999
904
251
512
955
761
409
667
497
954
843
766
180
313
46
94
537
160
410
564
117
388
669
417
37
462
796
330
521
553
141
899
434
597
307
926
475
384
815
986
899
819
368
196
798
858
926
814
357
499
199
292
984
400
692
72
188
387
672
451
3
862
48
425
568
294
986
66
94
685
711
352
612
290
96
139
432
678
723
777
645
746
984
40
838
927
124
589
721
8
28
311
135
551
116
447
918
779
301
845
698
498
824
304
577
75
907
374
773
594
728
765
251
756
545
515
197
398
711
221
323
460
613
867
49
345
762
1000
133
7
252
390
189
547
105
65
894
630
119
464
582
927
471
711
294
848
466
646
175
855
322
4
527
709
553
468
10
429
950
784
786
646
594
296
760
253
354
198
627
288
613
345
964
455
689
236
984
464
953
529
970
454
297
24
410
217
647
214
838
770
493
858
2
913
374
459
494
814
809
654
614
832
993
978
721
302
262
447
348
918
545
308
348
168
699
947
793
975
239
178
629
90
867
410
401
120
660
207
756
501
3
830
896
790
593
112
11
406
327
24
713
220
423
231
140
855
658
976
950
805
358
460
821
783
212
479
446
172
859
985
971
749
911
566
363
469
490
349
159
491
774
765
70
945
26
118
529
523
194
264
627
589
826
708
926
324
733
28
413
881
144
60
596
540
580
952
977
516
84
137
495
44
390
42
631
604
446
284
606
432
733
404
990
664
210
305
969
247
72
410
625
445
102
792
260
241
723
783
29
133
314
431
839
489
26
284
389
644
663
758
991
721
841
529
730
764
889
39
443
817
429
945
930
901
587
759
790
589
587
729
350
681
607
809
691
292
298
506
488
836
938
339
485
536
777
659
466
233
186
600
308
394
686
867
653
734
715
368
680
374
690
213
153
545
883
224
818
641
775
887
612
85
631
475
330
447
290
126
99
453
826
746
299
366
271
510
196
191
917
267
540
33
221
902
232
287
912
131
266
201
698
305
556
407
770
483
2
110
527
313
533
31
897
982
665
748
722
542
308
347
528
430
124
208
452
475
420
8
312
581
368
325
453
949
994
549
101
981
785
764
270
936
65
219
792
29
140
410
820
799
442
925
181
415
674
442
490
540
867
487
25
899
237
694
546
723
183
535
367
346
227
595
979
863
463
51
842
558
92
482
12
241
659
284
416
960
226
237
253
409
187
959
21
276
552
544
282
779
839
282
485
450
478
234
117
429
806
339
919
531
398
756
862
430
496
465
420
862
815
225
446
271
890
774
639
592
772
426
291
296
574
176
784
13
982
652
681
85
276
864
854
319
445
1000
739
810
885
328
821
361
130
661
563
994
439
97
862
857
309
798
485
487
181
784
714
974
876
921
724
699
747
294
996
399
957
506
353
50
876
944
760
64
407
411
88
708
262
841
797
641
761
436
59
610
524
205
207
211
278
688
553
119
936
411
274
987
171
777
899
977
112
915
184
774
114
565
141
369
671
83
33
268
897
144
493
130
286
604
239
613
985
785
664
800
883
38
330
346
684
526
413
187
929
1
911
551
97
855
235
173
864
409
25
676
947
352
626
841
181
79
430
350
279
699
386
322
430
359
461
999
427
870
444
428
33
89
643
7
23
29
853
538
192
412
333
11
135
679
993
203
702
748
778
259
85
15
823
98
340
176
705
316
477
861
836
256
182
405
529
318
319
58
785
353
892
944
644
813
47
387
148
48
304
255
821
92
65
572
879
191
358
938
263
364
642
778
580
717
88
733
910
472
207
988
922
181
858
739
113
977
937
593
502
873
764
405
339
483
552
963
33
95
654
6
775
604
815
884
637
531
94
639
944
535
863
661
150
455
390
545
56
275
681
666
453
56
101
901
689
921
548
503
535
480
909
892
596
235
896
241
34
926
562
440
214
914
691
292
669
648
915
506
583
994
33
846
269
308
786
984
107
739
854
163
928
346
276
344
659
963
180
687
454
853
838
711
942
626
854
241
782
589
808
669
780
615
104
215
27
453
585
424
34
875
274
649
313
425
214
894
103
84
481
293
956
726
570
829
119
367
800
164
452
804
93
853
595
797
495
262
796
843
980
938
838
645
18
385
774
661
558
263
517
201
315
644
691
748
973
484
981
810
541
432
927
9
183
124
497
423
728
395
262
642
974
674
714
70
212
918
241
454
561
650
257
757
943
220
297
322
152
650
316
202
881
745
885
996
339
45
663
11
825
173
423
993
717
821
219
679
877
324
935
801
401
453
30
215
39
754
315
720
907
571
235
664
567
16
437
359
517
80
9
50
927
35
119
526
523
932
949
236
685
336
489
293
445
950
254
898
354
667
81
37
1
140
361
85
103
838
650
972
863
671
161
361
565
334
874
836
179
397
202
504
881
897
331
425
324
197
342
987
699
34
15
921
565
252
343
918
28
899
787
245
344
20
719
966
531
456
475
498
517
555
941
486
967
110
131
892
332
363
154
497
319
748
689
49
763
179
12
753
910
68
141
843
424
10
206
342
314
775
544
573
911
803
325
384
942
525
866
805
38
329
377
68
54
26
571
849
766
69
736
314
374
774
83
718
844
956
166
683
998
474
186
208
731
575
966
943
602
794
852
8
26
601
846
183
219
803
362
582
109
131
753
981
822
435
60
654
712
522
175
333
388
767
503
504
268
285
777
463
138
53
700
178
951
763
92
363
607
609
115
902
955
441
761
660
399
20
915
965
887
974
676
662
203
961
338
777
361
128
409
233
195
724
456
562
947
275
889
305
281
993
780
898
366
542
306
942
96
342
619
458
943
437
957
728
390
97
808
522
267
882
505
640
716
529
937
150
559
494
954
661
682
500
85
196
187
268
641
583
576
696
929
890
677
621
95
899
426
582
514
967
660
728
638
722
580
789
108
340
101
812
230
869
140
804
399
809
653
226
168
799
997
941
285
870
634
940
147
638
405
72
243
706
171
380
676
28
739
740
78
853
998
224
825
231
651
427
367
664
475
92
239
730
848
148
180
464
461
20
466
607
341
955
334
878
516
13
934
568
799
559
792
334
454
888
591
962
106
854
849
30
157
648
837
573
205
95
822
764
988
642
676
818
155
504
663
767
459
126
453
166
16
377
915
759
343
862
378
556
401
499
566
356
217
200
75
60
165
506
276
978
805
681
980
401
327
590
35
417
139
522
153
851
906
207
588
875
607
793
910
21
17
687
329
285
115
297
140
441
675
760
967
816
4
90
999
45
425
107
108
848
370
951
692
362
469
63
745
916
631
804
809
341
903
349
248
717
706
416
235
430
391
670
39
695
521
637
756
675
205
371
335
768
959
231
916
874
852
30
448
512
314
589
475
76
642
983
969
375
14
30
422
553
741
643
200
908
49
55
98
249
684
748
147
352
353
675
262
431
700
737
645
796
413
698
731
971
237
169
93
335
476
653
188
349
67
601
577
11
143
278
698
204
77
412
30
223
447
185
62
557
712
926
618
472
864
200
29
281
383
95
403
337
420
57
124
972
191
873
629
170
75
475
598
288
183
16
604
394
568
185
894
965
21
417
296
123
132
185
945
430
519
913
312
218
240
962
700
41
97
909
490
221
130
436
705
528
678
980
550
510
48
320
440
419
137
258
194
788
931
82
568
230
597
855
750
555
592
602
370
612
613
580
859
489
724
648
139
615
560
478
832
907
398
880
986
953
300
258
495
581
313
581
845
35
63
163
780
296
249
485
977
457
13
843
364
476
234
964
102
168
575
925
116
332
384
306
47
825
302
295
432
370
549
967
947
986
46
136
964
353
298
637
831
959
946
845
734
91
762
601
56
510
978
423
391
434
142
565
134
356
580
384
113
479
361
811
369
466
714
517
196
694
219
931
228
949
91
888
408
574
891
654
713
687
567
63
217
470
853
900
461
30
836
959
212
222
330
14
38
252
761
777
681
517
945
118
733
989
432
435
110
950
403
879
594
812
259
500
833
672
938
540
709
743
562
628
702
809
691
439
645
498
424
401
393
404
992
130
399
447
42
993
659
968
138
300
916
584
102
34
26
570
507
82
568
620
105
256
483
488
666
767
278
96
237
561
134
485
863
620
341
237
772
117
725
87
540
936
920
639
356
440
873
525
218
631
910
773
608
293
175
664
318
778
230
359
316
951
764
883
268
620
106
188
744
413
689
159
804
306
560
27
135
616
755
929
591
654
30
453
71
496
534
325
6
460
88
651
36
150
488
290
46
812
300
740
11
338
558
712
538
509
214
731
990
552
317
547
353
800
191
38
184
243
756
610
903
152
188
368
254
813
713
670
41
415
711
490
926
906
274
476
768
412
127
709
247
240
914
135
662
478
752
954
765
326
235
431
385
57
244
150
972
388
767
962
209
248
99
919
765
720
160
21
101
923
401
985
305
903
735
811
676
677
975
984
753
542
817
252
346
320
323
876
832
959
636
922
165
229
729
593
971
525
120
888
550
644
828
16
395
926
890
58
863
935
418
518
338
755
931
792
207
961
330
839
800
375
654
413
24
667
692
930
998
789
735
684
960
930
206
38
590
958
445
213
206
51
272
649
917
444
215
809
373
586
554
850
438
753
125
362
927
435
329
693
669
767
740
16
125
559
108
8
834
23
677
333
434
258
98
51
817
593
426
969
765
279
611
141
913
92
810
318
220
939
85
949
17
453
533
358
593
134
903
316
764
354
875
858
853
767
295
720
240
281
299
313
316
953
349
504
382
569
172
877
63
666
423
255
199
661
436
122
39
201
978
621
202
769
48
294
238
503
491
160
903
641
6
970
253
22
822
745
873
441
168
932
288
981
589
200
887
322
172
795
548
115
868
736
956
207
166
975
639
207
408
950
103
678
526
175
854
835
774
372
55
930
98
183
645
92
507
157
429
120
416
275
168
910
235
782
978
932
455
256
847
533
140
266
907
98
676
669
321
848
975
976
716
444
204
210
426
114
741
305
574
344
374
453
251
206
599
868
778
794
567
843
574
623
274
668
581
808
456
672
558
7
429
597
369
999
337
500
769
139
317
587
371
833
49
664
379
473
772
102
397
493
93
574
542
859
977
775
238
550
61
116
639
770
560
937
90
228
56
171
259
311
872
499
505
541
546
84
142
780
48
484
630
9
116
728
855
53
506
88
887
306
9
396
313
926
799
9
944
480
874
783
961
982
528
684
165
400
759
950
166
81
466
924
531
375
818
156
791
994
257
332
597
775
660
855
299
365
804
794
607
661
902
531
328
299
667
93
301
912
144
606
359
409
330
723
555
408
858
767
393
815
10
170
52
85
946
454
516
854
236
605
257
872
527
399
71
836
116
379
944
142
389
229
590
464
923
798
569
389
730
996
872
839
546
574
113
386
44
321
860
428
942
302
306
944
717
949
351
843
707
999
723
607
862
122
935
293
285
467
319
875
640
118
517
766
356
746
774
552
389
104
511
252
768
976
499
104
818
125
455
592
140
36
148
857
136
458
35
473
949
60
979
160
175
564
219
943
342
601
997
443
661
577
591
1000
320
104
559
658
217
608
781
315
93
534
228
712
924
350
885
54
904
205
783
37
74
579
165
374
550
720
662
469
995
750
786
214
81
101
100
686
52
128
310
396
379
788
541
540
916
372
719
507
399
282
311
8
434
67
493
831
608
96
484
194
320
994
703
364
912
93
315
641
861
670
972
705
193
881
802
215
832
551
413
554
288
256
104
12
412
727
46
703
957
776
292
720
164
168
221
973
915
217
604
828
893
831
233
787
698
342
290
577
282
105
404
157
50
857
846
66
934
270
990
803
333
533
857
809
844
40
268
64
44
292
783
228
208
230
693
347
814
807
70
330
989
744
828
850
573
510
78
231
235
737
86
298
729
299
94
155
696
460
454
565
637
583
862
275
623
111
621
566
748
89
431
224
100
779
25
516
636
622
889
802
801
285
718
885
888
845
383
203
603
570
278
305
122
535
190
786
371
145
142
104
971
614
294
800
952
886
915
654
985
98
511
718
259
349
838
720
25
691
323
560
664
235
818
558
352
934
677
913
294
730
58
98
322
217
171
373
304
109
90
222
990
333
750
485
943
383
497
526
854
187
821
251
601
757
107
711
569
653
644
139
44
982
792
636
52
738
880
436
97
701
164
616
381
532
351
649
80
188
875
332
902
200
250
431
683
195
291
587
900
537
745
906
932
148
898
382
374
957
811
156
525
840
351
282
826
809
451
17
695
976
8
911
157
774
114
269
154
706
697
564
115
754
65
661
984
622
314
318
329
523
150
748
337
401
435
789
749
535
927
871
97
477
21
835
286
341
773
920
668
523
374
302
952
601
73
302
608
986
604
485
660
236
860
943
102
919
193
557
545
802
933
300
461
828
527
626
268
752
499
266
828
78
169
932
349
535
869
965
616
705
639
52
188
112
303
158
325
845
277
829
876
696
406
687
166
30
572
615
769
645
176
589
159
318
812
213
625
292
724
165
544
598
896
367
89
587
175
598
157
877
898
554
242
29
659
973
23
207
804
589
275
10
938
724
798
726
865
693
957
447
928
12
647
699
259
344
474
416
356
733
58
467
974
700
484
193
963
405
137
88
832
275
876
268
517
989
691
344
767
914
184
32
996
240
961
755
47
456
749
231
337
549
853
545
673
256
236
103
426
318
764
560
943
460
332
452
291
82
521
248
910
488
999
682
956
616
763
626
866
598
376
928
660
631
456
347
90
907
160
49
769
172
904
669
498
575
66
984
901
803
333
892
660
176
939
52
919
483
37
518
642
421
348
460
696
454
695
748
382
224
45
692
671
16
898
410
304
879
718
47
490
605
277
328
255
730
825
205
671
749
862
724
372
118
727
943
350
972
941
135
134
210
459
593
728
35
511
123
512
334
381
793
682
518
375
155
940
607
639
326
335
26
448
213
932
921
649
505
639
238
448
962
132
439
689
965
635
824
545
168
500
109
855
451
444
368
794
765
324
817
252
374
81
590
587
574
237
576
871
592
274
470
176
679
342
955
740
545
980
496
703
148
873
502
271
50
374
829
934
395
286
936
218
860
239
456
420
235
968
311
264
290
910
868
500
963
339
291
840
407
399
251
304
903
933
331
652
843
438
90
448
142
111
444
180
875
847
694
630
843
121
111
932
328
695
366
876
729
664
6
356
270
263
671
67
819
163
823
421
976
349
887
191
685
924
778
640
485
764
33
368
583
176
779
886
766
999
242
800
635
233
931
203
399
409
169
426
593
459
983
258
266
192
742
940
320
971
268
502
816
716
313
242
668
147
429
855
881
37
240
633
478
747
661
251
18
566
464
951
913
15
84
98
321
410
802
310
340
742
172
516
342
412
693
179
766
165
436
837
151
762
860
415
501
792
507
488
136
400
686
927
756
116
675
59
19
725
422
856
970
899
404
981
439
404
462
294
770
426
430
132
5
274
696
122
536
536
180
967
832
20
898
98
536
316
323
93
971
657
21
680
162
221
961
622
617
331
108
245
611
390
208
938
34
937
361
739
324
778
57
451
852
135
379
575
149
59
16
606
65
698
66
219
694
595
392
900
297
6
62
457
541
434
715
713
220
845
157
707
648
882
546
637
997
956
545
444
335
366
636
395
417
218
793
179
579
473
183
31
856
631
672
915
772
479
730
543
649
906
828
442
660
619
725
250
336
630
379
97
661
381
176
259
541
456
717
130
687
411
613
267
755
45
137
742
640
543
719
374
704
883
537
385
225
791
648
329
758
901
778
704
244
459
485
545
619
436
719
543
910
861
746
780
977
631
995
823
94
349
439
855
41
864
342
98
826
448
580
822
905
476
659
974
570
369
619
248
323
116
174
987
407
902
226
246
687
388
733
353
65
986
366
380
835
355
819
449
42
858
578
221
42
711
825
462
162
187
461
763
962
849
112
288
11
424
522
375
851
683
485
735
615
699
302
286
581
200
356
492
192
675
515
7
140
217
558
958
178
201
31
646
233
958
455
522
537
272
965
999
40
167
636
808
269
960
682
343
523
877
851
869
136
848
545
921
408
493
73
429
119
642
5
68
951
860
521
179
552
316
321
370
634
752
764
753
756
449
562
403
58
298
519
542
211
667
439
65
339
403
690
584
364
93
158
223
458
468
826
722
348
356
910
275
182
327
125
467
167
622
868
515
93
527
833
4
505
772
447
501
690
1000
94
588
348
978
760
818
21
837
867
444
593
189
591
325
807
464
932
372
414
978
412
84
715
30
684
245
737
252
852
366
777
747
765
61
514
557
742
92
289
156
711
421
739
913
181
342
627
224
881
772
602
8
950
404
531
229
609
638
112
270
186
869
300
796
861
222
730
446
183
68
100
902
73
387
931
231
657
876
760
707
358
935
41
134
323
338
821
100
71
386
343
147
480
455
168
918
158
987
910
114
773
707
328
383
59
574
872
473
350
432
596
142
512
982
653
851
44
463
461
458
472
776
392
295
317
453
212
839
234
194
614
835
763
28
970
906
201
956
377
20
499
928
864
374
126
837
398
909
445
315
849
607
428
142
950
883
905
713
691
874
136
927
307
662
564
703
404
361
458
395
818
103
216
983
37
978
655
521
412
938
246
323
309
356
26
844
245
695
666
948
949
75
792
99
58
948
419
1000
799
486
758
704
999
501
797
687
547
924
415
863
75
209
885
178
24
814
623
110
413
280
16
312
723
101
911
331
956
291
852
681
849
381
409
542
252
78
478
409
182
62
323
79
972
660
929
126
968
62
958
844
436
191
896
315
404
19
89
407
694
806
169
784
822
472
480
222
102
916
850
653
920
73
128
410
37
357
57
231
223
121
42
909
187
350
423
178
300
608
616
858
903
767
230
911
991
331
253
515
378
887
393
56
735
530
54
415
851
157
944
575
19
412
766
89
650
281
874
279
396
925
145
41
512
623
590
53
367
532
462
478
852
378
61
553
943
723
201
645
44
830
868
574
54
251
422
971
304
286
853
883
797
361
196
770
839
303
768
1000
138
631
254
585
50
521
335
817
891
609
900
302
697
918
419
126
710
521
27
250
108
308
392
222
844
472
193
851
848
840
796
390
792
250
41
493
999
309
477
183
197
361
899
961
590
852
313
109
225
235
680
733
269
659
937
136
189
727
34
437
252
883
891
811
252
497
622
320
719
522
939
662
284
728
145
800
26
17
436
221
629
174
953
104
9
821
731
425
192
467
54
929
480
455
916
486
238
600
226
920
804
649
525
603
836
752
60
267
125
215
559
964
220
788
636
28
947
185
647
607
555
274
165
923
101
80
629
511
543
895
601
903
201
507
982
650
221
513
346
727
645
963
717
998
383
44
586
451
310
149
781
882
557
825
263
156
368
117
882
66
534
448
332
386
438
913
681
399
915
133
489
850
115
825
171
343
605
730
88
788
990
687
229
757
896
676
250
268
313
279
279
310
996
29
922
289
695
403
988
988
878
499
220
385
498
583
223
800
801
114
526
39
40
444
984
705
207
413
479
791
436
976
381
485
575
267
958
392
991
251
385
62
925
69
290
956
126
237
47
751
819
987
771
360
743
647
449
682
990
499
284
141
466
869
630
30
903
517
89
170
521
254
360
581
358
300
621
582
540
505
60
629
54
567
567
203
236
484
462
614
807
628
469
710
91
721
229
90
837
551
475
784
760
868
489
246
53
948
450
677
724
733
828
108
20
236
745
466
315
418
806
347
531
124
164
494
604
784
298
517
957
772
699
186
693
709
308
103
994
918
865
222
541
208
329
22
58
45
482
466
146
866
90
358
69
644
99
131
275
135
378
710
36
365
28
6
275
271
819
868
990
960
386
736
334
359
769
193
786
106
74
23
206
148
367
385
5
834
782
903
921
233
411
910
286
963
968
816
356
17
157
798
313
301
65
689
387
576
583
179
767
534
508
284
561
282
816
465
647
604
648
733
457
270
222
188
743
532
28
763
669
617
770
197
317
409
746
382
483
164
96
380
194
969
776
285
968
179
481
710
954
448
869
152
796
910
337
556
225
444
635
147
594
870
345
93
448
317
912
318
551
310
309
564
643
412
339
848
133
169
774
864
32
901
460
731
560
140
22
700
185
392
600
355
413
903
253
956
235
303
822
825
613
441
908
417
922
713
353
294
509
754
129
335
264
941
829
549
161
190
151
397
475
919
537
577
165
385
944
131
374
735
13
606
562
787
562
7
984
447
803
308
848
822
175
479
887
191
586
626
918
839
344
390
114
36
131
133
728
251
982
246
77
46
537
780
290
73
937
694
182
998
240
568
461
973
793
32
356
248
13
366
763
424
51
722
931
197
263
806
171
568
306
890
634
122
502
945
877
958
698
208
570
932
325
699
429
710
695
39
208
956
765
789
805
776
923
666
271
853
94
376
786
620
857
72
293
523
512
338
845
27
342
705
193
771
840
403
330
714
805
193
207
36
499
38
262
271
34
886
406
89
149
430
886
397
132
390
908
938
571
397
957
846
165
321
203
343
177
620
2
792
320
365
539
965
715
160
136
959
436
755
797
28
724
488
526
378
629
179
746
543
793
951
111
456
587
672
978
307
431
853
165
923
449
505
379
78
312
865
418
440
310
747
996
415
885
31
617
182
729
906
825
79
701
221
989
638
4
552
987
466
967
581
821
626
210
571
84
670
231
38
264
843
873
777
535
285
208
121
86
760
586
241
853
892
567
465
856
105
617
861
76
462
309
960
679
820
978
502
759
237
376
350
80
920
879
486
95
775
442
595
368
671
486
477
778
455
412
486
437
247
491
18
886
424
57
159
310
184
682
156
49
317
23
396
630
884
768
567
802
100
63
728
472
56
283
84
610
297
867
613
309
981
374
758
276
846
671
139
800
250
482
403
425
338
692
236
700
747
388
228
56
742
842
143
670
585
459
256
616
639
151
112
687
406
371
482
200
88
268
475
429
144
263
388
299
462
157
79
467
472
150
883
511
439
536
76
97
780
295
137
466
699
249
988
83
760
956
995
790
434
532
798
661
226
545
599
729
311
921
850
114
377
816
95
165
187
774
721
643
804
215
867
587
203
53
674
135
196
361
774
547
679
30
459
84
180
336
985
708
266
318
515
617
633
139
121
73
56
357
220
134
776
823
281
73
427
367
531
428
995
362
88
582
922
433
234
282
722
364
992
560
713
373
188
850
924
441
453
609
564
773
997
803
206
228
283
535
140
597
391
842
21
490
12
272
661
274
786
496
835
559
573
987
462
27
384
907
30
393
930
989
420
318
641
262
804
260
186
560
385
773
468
288
81
619
315
460
349
273
82
437
423
830
727
720
310
409
65
780
506
543
550
410
7
906
499
396
865
944
936
520
171
324
384
695
239
466
304
543
788
605
131
129
196
347
709
233
637
990
618
418
741
687
889
644
610
554
63
420
784
719
789
64
370
927
99
484
139
867
793
24
534
287
223
426
243
195
265
587
329
818
544
887
416
387
787
786
959
46
117
200
399
760
606
402
879
458
462
176
279
585
369
142
888
838
206
861
160
380
880
652
753
387
606
149
92
198
636
695
970
482
742
185
60
834
753
121
113
592
799
505
317
296
14
519
611
50
341
844
988
605
161
786
255
358
761
381
936
372
134
439
679
716
238
14
667
597
178
519
133
571
460
555
321
91
815
787
105
173
927
643
205
70
543
680
102
70
599
429
138
601
739
475
784
330
78
754
975
767
334
452
925
522
182
768
117
54
602
410
949
307
899
388
663
616
270
732
947
686
148
545
129
195
169
570
470
377
825
869
986
443
706
659
959
4
423
328
903
470
413
844
768
389
979
4
301
572
415
349
325
931
309
43
469
226
264
340
910
649
611
867
195
38
582
595
755
968
408
21
28
494
803
257
647
667
512
653
688
605
337
111
544
968
594
374
140
168
879
929
162
997
228
142
24
135
538
581
476
525
154
29
90
333
95
497
765
596
574
959
825
479
699
758
986
612
335
995
438
427
683
682
401
924
814
540
445
657
476
113
825
433
618
348
919
399
580
556
566
793
279
545
704
495
506
789
40
735
241
993
402
374
922
208
150
410
269
911
526
180
834
515
746
677
422
848
172
526
565
54
984
999
447
178
898
527
24
663
515
819
489
364
549
833
714
912
538
151
932
725
339
410
214
882
119
382
912
325
908
268
811
163
294
521
837
372
123
396
403
328
961
762
38
799
606
115
628
588
315
684
493
170
496
296
787
6
965
108
201
608
33
595
124
941
633
929
21
939
762
126
43
240
318
76
636
412
815
997
376
585
705
536
748
510
915
180
46
809
603
770
956
422
263
15
774
368
584
290
223
403
112
127
348
888
698
21
957
115
188
448
524
310
264
248
343
620
473
78
446
855
77
570
809
498
230
61
779
677
411
985
498
641
927
760
306
842
199
80
843
705
994
425
445
497
271
777
672
56
27
642
344
167
146
472
487
563
330
480
306
842
537
675
138
50
188
535
290
634
466
268
528
669
975
810
279
147
256
317
15
476
246
462
604
609
740
627
174
384
28
973
189
355
702
885
748
610
924
55
549
748
246
423
297
306
101
191
737
443
133
444
264
298
648
711
640
718
780
832
781
895
134
635
831
847
850
447
983
536
652
568
350
756
641
383
708
704
572
504
497
976
268
627
133
293
464
545
330
554
386
807
797
467
947
967
8
792
444
749
341
530
608
672
404
443
420
890
964
890
825
433
470
715
750
694
449
815
46
404
618
250
635
537
389
825
31
476
41
21
409
984
634
233
825
256
657
788
434
912
184
186
590
230
952
283
553
102
297
649
670
430
697
112
667
41
337
880
947
295
472
972
762
422
685
421
99
899
370
867
590
287
933
323
518
643
374
843
518
50
278
120
801
126
873
135
669
373
32
240
4
37
161
531
349
467
420
929
559
606
434
912
247
709
609
496
374
307
253
134
537
119
110
325
234
651
497
727
949
720
869
65
949
471
843
631
665
333
857
349
371
95
209
357
560
878
909
23
299
631
858
676
796
73
833
196
851
235
692
207
107
581
572
778
75
837
885
807
674
717
488
185
482
125
827
314
995
643
854
30
654
653
691
752
535
935
558
818
689
517
724
894
464
24
422
945
423
41
841
936
464
840
838
404
445
744
161
756
476
863
384
35
390
287
109
174
878
911
838
491
498
784
894
336
99
121
710
911
965
753
20
39
945
240
352
665
121
875
961
653
610
122
636
962
631
853
774
596
699
965
652
536
595
158
514
628
962
428
444
94
20
444
63
829
145
191
769
6
116
220
512
343
815
658
194
471
82
15
476
926
793
358
478
944
23
805
2
203
381
531
199
741
823
139
618
101
177
175
88
624
430
653
578
829
574
748
578
914
820
522
330
486
325
383
841
609
393
637
858
6
371
928
212
721
141
60
891
322
962
909
631
109
406
351
345
659
887
567
208
601
872
418
257
668
786
15
877
161
750
243
404
866
113
534
975
90
829
84
182
984
70
120
741
245
20
352
834
217
394
655
995
914
896
885
316
116
504
419
962
250
785
505
281
252
879
390
299
863
276
335
543
803
193
417
365
46
74
866
362
53
492
230
420
234
445
282
775
755
75
573
1
201
132
113
447
362
939
36
941
934
273
950
808
392
757
207
828
211
961
776
936
961
88
812
234
869
646
457
30
985
555
844
505
504
140
679
809
97
879
196
521
661
312
906
784
111
663
374
711
211
85
197
890
284
517
132
288
904
172
222
459
374
540
676
285
940
758
971
595
568
378
12
325
284
278
831
312
261
808
47
622
264
799
672
889
815
482
547
467
271
651
371
515
186
77
319
916
42
577
87
798
59
980
921
642
953
540
128
411
778
557
652
105
148
984
543
771
181
748
68
693
135
616
447
842
294
877
760
699
318
119
654
56
288
405
880
945
374
457
207
430
190
447
258
956
260
603
569
959
263
464
840
528
20
154
807
548
362
154
183
271
615
661
814
551
35
812
945
672
704
10
379
869
316
885
967
59
869
760
646
13
552
209
905
132
965
749
681
33
449
510
937
142
383
760
976
426
732
709
285
707
169
796
805
576
226
603
404
238
185
539
375
20
698
623
71
888
90
750
532
971
84
723
427
288
1
576
43
644
909
186
143
668
731
788
285
198
882
782
302
872
470
304
746
7
371
369
644
254
772
975
26
191
514
232
759
682
199
459
875
209
736
836
978
43
895
920
293
177
653
479
429
39
307
368
662
706
496
972
699
655
959
192
565
370
463
977
719
598
145
17
68
96
283
361
885
662
59
467
329
524
494
622
666
275
964
138
238
431
449
358
79
226
610
32
9
988
315
379
558
942
666
842
984
332
574
198
864
445
533
941
655
390
882
62
247
470
654
613
717
664
905
819
839
344
327
719
645
192
480
685
161
72
59
819
247
322
53
86
676
879
630
515
226
784
477
269
570
891
605
454
710
645
714
946
36
400
179
411
52
111
419
452
211
606
993
665
296
242
400
672
238
56
233
155
691
96
142
688
466
155
201
535
807
858
617
300
254
704
509
565
226
657
706
957
314
910
246
444
821
336
208
203
729
253
991
145
857
537
934
57
976
637
680
671
449
882
717
520
727
533
592
707
878
783
476
450
555
726
525
605
660
674
92
105
572
996
799
720
169
906
750
121
226
459
128
931
402
613
396
178
734
7
408
569
799
45
309
786
121
496
324
209
993
713
771
450
809
513
421
498
905
556
731
609
524
51
559
834
661
463
509
405
503
213
927
530
339
779
358
198
695
636
481
480
498
277
743
526
979
203
60
485
430
376
721
722
196
606
162
104
532
811
740
68
200
9
160
981
10
981
168
255
659
584
986
724
647
738
598
964
381
683
624
896
837
1000
165
882
472
350
675
82
585
977
714
649
398
702
199
22
610
384
858
873
935
222
86
500
429
541
956
754
619
820
952
730
27
474
409
6
68
717
28
764
288
294
495
461
609
565
812
20
926
395
195
895
920
479
306
820
692
78
872
451
191
8
50
588
149
574
135
425
224
596
377
454
570
124
417
889
522
857
151
510
136
332
760
923
933
556
356
941
532
413
417
238
192
894
739
144
84
686
163
355
747
939
429
806
440
5
15
658
755
899
6
518
113
761
889
786
35
153
606
636
961
111
433
302
244
480
799
127
637
277
958
53
521
441
616
579
607
626
533
868
115
893
505
545
602
144
94
57
977
58
865
820
954
624
270
451
606
467
222
970
127
753
87
189
127
965
961
405
921
593
130
792
425
793
502
993
465
983
93
483
387
728
662
752
495
848
519
305
813
681
204
791
402
387
972
263
873
615
527
246
21
87
863
362
976
183
578
252
954
104
885
784
306
2
659
247
834
657
445
698
237
202
844
799
743
953
736
643
130
22
274
985
628
498
186
659
688
622
543
289
380
815
976
222
381
674
97
413
992
975
909
25
876
933
537
572
424
625
407
776
7
99
846
542
91
493
177
107
837
304
767
484
901
262
511
457
834
920
235
32
476
183
503
954
840
417
22
233
709
18
277
708
40
188
987
754
679
412
233
965
17
897
746
663
147
821
462
56
956
881
475
663
786
318
77
620
109
111
992
586
596
821
295
452
143
731
910
388
230
541
410
346
966
834
336
211
530
850
957
172
484
820
427
583
878
976
272
442
713
715
987
36
598
776
857
343
987
233
56
956
316
334
523
778
720
277
479
263
809
439
194
396
858
841
696
502
622
773
462
704
738
377
72
291
81
913
86
152
633
287
110
108
757
194
152
658
251
625
362
841
534
9
264
38
795
624
900
200
790
609
241
374
140
240
157
581
696
491
266
790
186
548
276
94
496
869
814
145
60
598
630
347
977
381
612
734
602
800
474
851
437
430
621
562
251
422
994
577
839
974
321
425
89
77
350
4
952
541
926
90
105
721
674
621
648
596
371
615
95
768
258
211
834
269
436
660
349
862
771
177
994
716
239
294
262
990
68
522
724
22
703
684
363
473
228
166
955
372
162
839
868
18
190
919
621
708
700
767
354
680
426
947
874
617
316
780
307
276
30
280
658
698
866
977
71
242
6
66
615
213
423
758
415
487
380
82
966
128
227
311
733
20
341
741
655
80
998
394
616
837
84
954
505
253
277
511
969
569
842
120
854
192
560
325
842
823
802
633
215
263
94
945
224
796
454
400
371
531
113
436
163
108
333
939
234
532
24
309
188
512
693
145
43
459
135
506
929
726
737
986
343
935
819
730
811
717
871
232
994
15
452
461
494
991
45
14
547
979
579
920
336
429
672
57
494
403
196
860
72
230
788
576
393
55
546
302
481
586
580
52
309
839
360
961
113
369
324
495
727
905
512
579
563
280
709
896
823
509
956
693
631
187
695
945
279
585
526
644
500
238
730
597
185
572
505
904
651
985
686
790
713
815
892
597
997
145
613
708
663
784
114
988
833
650
484
35
357
453
227
706
921
548
164
940
360
730
782
872
280
193
543
785
246
357
80
143
586
661
381
967
311
321
350
461
997
610
585
156
720
862
404
68
638
664
110
821
323
746
839
717
69
55
309
130
585
181
593
350
102
975
634
375
27
302
197
436
348
304
948
105
578
746
995
452
498
815
383
541
93
518
782
54
85
354
497
293
29
723
233
366
400
589
682
432
207
175
988
411
205
76
81
558
197
709
407
406
633
833
354
973
500
782
130
419
46
595
529
166
761
321
791
737
514
597
111
193
642
394
772
825
671
607
689
5
919
771
737
503
492
265
359
183
876
163
359
682
372
748
17
901
101
780
761
389
496
715
644
150
503
248
680
487
460
237
454
846
412
566
831
165
615
841
595
929
382
675
916
582
475
328
783
487
373
913
89
911
205
753
176
875
956
455
39
29
88
693
178
632
221
900
948
891
787
545
855
848
345
50
310
323
198
859
908
531
135
441
334
164
297
734
733
523
773
830
569
245
535
848
868
387
527
395
379
637
440
308
968
836
168
311
514
78
982
341
574
17
553
624
820
220
850
57
627
67
408
927
299
772
736
185
290
850
473
734
87
40
501
932
244
834
571
245
880
978
633
999
994
136
947
284
508
60
878
792
372
825
189
208
930
73
70
632
925
265
136
27
671
321
303
979
377
773
14
304
961
752
898
796
431
734
372
884
572
47
552
449
140
201
246
952
416
39
719
826
848
331
819
291
373
856
696
495
570
541
170
79
179
40
776
310
381
285
862
546
295
798
86
260
797
166
617
741
357
522
534
710
565
469
908
38
908
859
146
529
843
796
578
906
103
805
268
138
976
957
873
519
928
148
908
784
441
949
676
975
299
119
343
104
888
929
161
475
20
199
695
486
875
480
120
581
249
149
1
699
898
251
706
823
138
779
756
777
744
992
284
460
373
488
72
103
774
883
374
584
817
934
478
460
979
751
107
226
227
594
874
495
301
689
637
584
156
980
490
674
946
24
464
32
708
268
216
763
706
378
417
189
806
596
114
425
205
186
510
66
109
421
583
568
732
417
526
438
962
719
110
400
421
152
56
594
385
690
814
476
373
888
274
270
102
52
324
474
612
995
845
552
391
554
749
577
268
431
956
949
536
517
689
488
787
795
936
269
587
478
414
114
325
817
756
373
55
382
763
467
932
445
152
528
197
780
75
324
806
974
273
702
271
249
944
722
501
993
562
834
889
413
854
476
879
94
267
473
236
679
484
593
611
524
558
200
234
963
454
927
434
998
281
656
296
657
441
627
815
310
364
983
355
593
788
507
663
726
573
614
455
394
945
947
682
341
516
969
53
5
372
109
332
710
566
813
777
647
102
548
972
908
583
70
25
5
367
814
131
596
995
907
301
955
134
28
875
721
337
352
576
961
94
67
144
593
694
482
188
53
580
127
588
463
74
811
801
55
505
295
834
547
44
706
74
492
684
7
456
909
214
691
683
326
929
60
39
881
804
604
60
620
633
347
868
843
951
302
719
587
304
420
128
28
267
712
214
175
988
839
490
555
216
275
926
960
227
199
253
280
199
892
140
911
187
559
58
740
717
199
432
968
227
189
979
28
878
198
282
904
233
828
917
34
994
886
767
762
280
776
350
573
850
818
918
999
148
502
200
369
307
84
981
748
77
585
174
249
924
961
137
771
634
72
160
149
756
809
164
101
169
711
11
599
368
617
851
265
681
436
467
468
987
701
392
654
314
228
788
947
122
301
819
39
223
31
71
952
321
441
729
386
537
606
303
277
774
470
243
533
250
922
556
552
437
744
152
305
353
986
800
277
160
64
619
755
452
8
50
288
94
785
702
68
333
809
999
55
884
180
509
318
634
150
911
210
51
43
632
738
723
892
164
541
672
930
826
983
278
641
142
830
828
301
1
472
402
825
202
250
804
14
732
894
655
629
856
987
890
29
946
691
70
745
934
321
483
429
272
396
346
449
328
827
226
966
961
370
1000
353
119
888
29
808
902
340
448
74
377
847
230
866
125
341
899
867
140
732
168
342
66
182
18
167
196
544
615
100
984
62
322
302
719
281
19
617
98
108
407
205
153
413
136
249
467
605
506
283
213
226
8
168
324
90
56
22
317
247
599
607
982
279
547
878
982
80
696
766
585
185
714
182
475
399
456
503
106
310
67
179
308
175
667
49
357
456
418
540
208
184
443
648
1000
955
271
744
735
904
737
773
768
257
81
658
559
697
78
222
829
596
926
482
772
795
467
377
582
987
161
512
870
596
933
185
325
820
447
997
999
613
700
936
478
407
51
616
887
379
220
225
108
897
441
980
94
526
899
398
762
82
405
99
975
45
26
126
75
442
84
719
140
937
163
234
841
247
749
473
692
390
811
181
776
176
806
45
354
561
936
264
357
491
776
730
107
614
373
830
650
978
725
433
420
154
288
410
126
753
797
766
296
869
859
596
472
218
389
136
448
456
673
800
183
340
223
852
835
955
756
767
711
744
918
1
622
640
477
194
307
828
974
70
212
274
113
317
855
559
591
728
263
440
387
591
726
227
406
411
204
411
298
999
982
597
78
508
716
548
856
426
810
539
546
673
321
843
267
137
454
284
411
395
501
898
442
936
346
160
523
868
777
687
596
383
242
745
307
991
758
16
171
310
159
976
52
610
691
232
882
412
148
244
398
421
987
6
190
734
548
794
221
503
854
933
580
107
591
653
744
456
174
513
930
284
743
762
403
285
468
949
700
938
962
261
40
124
443
313
711
39
423
649
203
512
628
27
983
866
964
376
587
766
374
713
401
129
918
701
375
286
510
898
382
348
19
163
850
387
277
692
957
317
455
473
490
995
547
361
302
684
480
91
656
269
275
156
807
759
373
213
11
904
413
833
175
765
851
546
627
737
971
70
923
621
718
637
361
718
538
762
598
504
498
385
198
860
552
933
547
671
284
220
474
621
588
311
319
640
596
910
615
425
93
299
950
717
651
165
956
357
416
209
649
909
44
617
312
145
406
645
247
845
114
682
716
30
664
403
285
909
26
622
717
382
103
849
503
245
16
476
133
925
807
461
828
23
98
466
850
778
392
920
447
679
492
176
244
190
908
850
149
727
435
819
828
93
681
385
433
326
437
278
458
216
646
615
949
307
73
432
518
70
829
665
325
549
924
86
669
925
893
874
674
472
319
133
313
633
978
81
544
644
717
685
753
572
988
169
654
832
887
110
816
153
953
887
122
184
225
661
629
65
546
999
844
832
760
173
921
296
694
828
595
518
41
688
896
98
313
405
77
182
204
717
994
479
772
167
36
38
733
768
169
33
232
452
21
369
413
330
164
65
382
647
776
178
987
469
225
829
858
822
976
343
626
326
747
937
127
273
457
759
527
384
168
676
289
267
801
918
719
576
978
319
78
590
299
401
796
314
107
664
745
738
529
629
724
726
413
703
371
695
54
292
628
418
217
203
144
731
241
926
156
348
438
641
760
192
621
424
900
644
394
964
821
884
891
528
908
21
739
988
337
732
778
962
652
956
797
634
587
111
116
953
513
871
464
803
498
609
784
769
898
974
645
447
30
971
844
241
910
660
743
170
283
15
273
937
264
7
885
420
831
208
655
881
65
529
406
892
577
223
266
493
958
417
603
633
283
760
89
719
346
523
814
979
572
142
825
327
109
571
571
95
830
149
121
693
783
753
714
620
981
446
283
733
894
372
498
985
134
497
425
736
565
621
745
417
826
424
645
930
520
691
319
90
42
653
585
343
308
646
568
325
308
588
354
331
389
862
12
87
559
201
988
927
84
312
412
344
400
967
710
660
639
140
636
344
437
283
645
490
393
375
352
413
833
285
597
880
265
168
830
736
92
570
893
881
994
81
179
106
58
235
971
355
309
264
388
902
745
665
585
7
9
143
562
285
576
82
368
104
145
249
704
577
871
641
254
844
402
729
764
37
849
991
99
410
171
621
724
910
175
720
636
94
225
842
239
695
828
42
248
800
920
32
279
146
947
827
648
14
715
487
675
665
856
648
395
214
51
482
133
427
458
255
943
770
849
440
137
471
600
696
542
157
454
247
636
528
319
907
922
180
108
259
888
467
732
580
906
43
383
922
64
333
945
490
171
661
514
74
359
993
583
944
692
936
614
896
511
415
924
203
23
291
802
828
300
337
933
750
587
211
187
66
719
789
575
30
305
609
861
564
168
290
185
100
238
649
436
145
45
400
647
162
483
602
998
556
49
670
944
776
92
978
229
74
533
957
362
824
339
96
299
138
28
254
866
288
795
351
334
669
417
991
339
619
669
384
165
459
218
953
887
173
592
263
906
140
649
125
84
432
745
715
796
642
657
818
121
367
757
341
737
717
52
909
790
651
309
949
785
913
574
763
789
745
477
460
279
84
98
517
950
713
268
130
187
30
262
292
871
553
648
259
567
378
63
17
652
539
386
971
832
437
939
149
807
512
994
692
819
38
228
965
615
215
700
622
794
335
954
651
261
367
45
970
114
188
270
572
8
162
890
563
412
978
751
697
496
590
941
676
382
74
801
339
913
65
167
845
878
754
357
244
166
79
961
633
509
756
957
895
725
900
687
123
464
148
171
378
564
915
192
911
253
967
653
102
640
276
679
104
35
501
451
209
331
857
958
541
470
949
532
203
213
575
656
974
196
665
466
134
169
852
54
576
837
17
837
132
834
172
359
918
793
370
912
804
598
129
927
412
336
389
133
896
27
696
830
568
894
656
644
687
646
188
690
125
947
676
453
812
737
591
882
226
65
339
517
940
504
27
845
52
297
992
357
963
745
361
494
683
397
347
351
976
960
923
779
262
416
323
468
193
848
956
852
785
907
983
60
28
346
232
349
360
937
343
230
5
820
922
759
62
653
38
100
579
242
913
544
427
469
570
434
253
847
952
722
672
498
954
987
233
612
462
925
200
926
553
89
956
600
292
837
641
296
572
351
417
557
642
456
190
662
536
25
50
743
386
785
16
891
588
596
444
465
391
826
943
675
969
614
97
765
632
946
172
54
685
650
664
867
421
615
687
257
242
376
215
142
256
775
72
626
923
867
627
497
722
552
392
550
459
55
239
668
373
325
314
734
700
271
365
364
507
543
130
926
505
30
658
493
121
840
655
544
295
483
294
298
639
457
978
121
387
431
651
850
763
325
571
911
769
880
832
159
599
75
927
175
426
662
439
153
224
170
251
835
20
414
213
120
478
648
792
233
554
287
75
100
613
519
174
581
791
941
968
84
895
323
723
589
212
431
368
492
572
965
396
485
687
578
914
779
879
467
114
631
673
352
522
276
191
180
346
874
302
830
678
507
779
518
338
704
531
499
189
759
436
880
792
68
729
791
761
497
415
358
82
678
806
746
402
259
77
679
199
260
80
99
955
386
734
542
947
2
651
711
810
327
137
14
977
65
719
767
604
871
559
242
150
688
917
137
546
844
774
335
316
742
581
741
974
454
179
920
724
948
839
539
783
249
811
77
499
643
922
255
842
389
783
384
304
551
730
813
430
785
3
416
163
570
793
174
813
680
531
908
388
227
866
672
71
88
155
771
704
236
989
650
832
894
663
527
462
223
828
339
639
433
165
313
169
709
837
997
382
23
314
100
141
752
828
388
214
845
296
337
288
202
232
445
708
590
663
681
769
681
56
567
692
614
889
790
311
866
39
736
495
399
923
319
548
587
101
255
613
920
379
454
579
372
275
44
32
619
181
970
124
427
824
412
771
571
712
958
942
833
83
14
742
506
712
290
395
925
856
660
418
869
778
118
580
259
75
165
427
520
707
548
797
60
68
634
733
217
309
15
463
909
379
191
158
756
897
784
4
770
635
199
517
403
226
325
559
725
561
399
910
998
299
528
122
661
644
207
597
147
80
670
943
436
422
987
788
658
133
693
296
314
957
317
220
615
904
757
444
784
351
680
866
680
473
585
925
784
182
415
275
945
142
454
405
876
600
158
868
631
745
222
63
3
700
824
141
702
829
640
181
824
618
407
692
242
210
970
989
419
25
772
361
655
131
643
151
144
988
560
624
421
719
243
736
556
576
914
444
744
184
33
623
542
678
595
462
182
709
243
732
890
558
629
972
739
135
79
278
582
749
392
415
435
624
498
200
286
411
944
344
176
480
522
253
23
981
499
823
790
784
591
592
756
480
604
867
975
913
273
25
908
366
815
245
650
581
737
957
920
977
993
171
93
884
292
886
453
890
888
1
499
1000
709
89
38
688
171
930
879
609
832
765
177
666
456
281
457
388
561
413
825
413
89
739
66
360
986
438
277
122
479
888
299
702
258
168
469
87
89
698
875
895
903
106
996
599
613
203
44
689
121
641
372
627
173
54
988
882
981
455
481
685
323
552
228
537
205
601
521
643
631
491
892
193
558
23
361
23
227
439
424
655
895
80
783
287
44
567
802
988
2
312
47
251
478
226
161
13
233
110
416
488
960
34
705
141
850
840
522
770
587
661
178
58
713
215
423
44
252
430
468
849
400
257
557
553
172
969
207
696
933
372
858
970
365
621
112
627
510
13
165
422
674
505
777
259
806
443
557
423
238
432
890
239
765
334
154
397
424
407
534
517
885
72
376
185
501
977
302
748
904
531
592
156
869
581
827
983
632
347
646
249
536
102
220
639
717
103
201
806
373
629
590
139
16
171
418
118
853
695
788
532
309
822
76
463
777
968
73
837
631
887
195
63
359
865
116
73
809
634
372
656
132
371
266
544
400
542
897
250
362
722
922
966
277
557
515
847
789
709
834
860
494
764
300
745
887
669
717
721
861
456
501
819
80
242
530
389
817
267
184
261
915
189
232
591
764
431
275
264
38
675
131
955
471
550
697
185
269
635
161
320
651
914
951
551
546
485
370
71
591
811
21
177
146
547
699
593
325
844
170
855
662
272
180
65
750
991
187
982
592
952
129
277
148
991
989
576
538
567
205
452
199
283
649
29
867
564
571
475
131
467
896
916
112
628
48
722
184
799
353
10
594
884
116
491
672
281
175
722
392
83
608
775
336
86
876
596
574
675
814
195
942
462
898
736
378
377
885
623
741
36
213
11
767
768
447
751
693
144
710
367
808
13
799
584
590
991
340
376
801
14
159
686
825
188
983
695
797
622
804
767
531
362
662
123
839
718
845
43
606
429
20
878
789
967
564
887
405
690
772
532
167
271
633
530
172
580
501
731
196
830
821
354
978
471
456
948
397
658
780
800
91
215
282
664
909
257
425
665
548
838
404
475
726
457
976
838
459
229
423
919
525
265
434
301
892
37
169
937
694
690
566
143
662
379
920
793
984
718
28
223
215
608
834
70
398
986
775
30
865
950
598
784
545
573
999
791
134
161
562
464
780
248
62
29
793
250
827
269
304
956
409
160
958
528
32
11
243
944
87
598
30
311
863
910
594
695
50
276
795
856
745
56
683
26
17
980
113
584
409
541
515
43
525
565
356
92
288
53
344
995
621
466
81
73
137
112
101
501
626
781
700
116
544
82
256
60
933
74
797
134
684
310
14
607
623
505
457
150
408
47
551
683
154
215
210
885
15
449
114
705
907
822
891
384
266
281
666
768
292
554
50
502
103
730
199
213
98
873
904
771
614
805
154
973
699
931
244
306
139
513
860
452
369
380
774
367
410
996
20
989
400
742
117
696
945
637
973
165
947
209
282
283
698
552
52
139
705
267
216
724
58
336
857
660
562
488
14
510
422
474
797
435
518
92
676
416
55
415
827
492
851
226
180
234
321
343
158
431
544
690
187
394
25
423
125
962
135
544
7
607
22
783
251
360
782
204
746
540
546
945
882
427
407
104
145
186
218
758
323
911
802
168
908
756
280
795
733
693
481
190
791
341
673
622
602
836
2
942
794
430
155
956
651
372
105
38
747
334
13
905
214
531
773
279
838
271
147
425
618
659
282
375
978
25
658
50
999
44
252
518
55
725
159
17
804
874
157
283
90
995
410
109
651
75
881
62
551
808
151
523
144
962
245
630
675
330
854
566
18
415
21
705
953
392
788
858
310
698
536
189
951
947
455
515
15
188
978
917
119
687
324
763
218
65
544
998
2
944
890
952
527
502
979
358
95
867
284
161
681
833
883
358
264
19
166
987
70
357
11
541
331
642
533
388
711
756
735
69
366
784
348
408
593
827
650
779
137
477
347
892
860
312
664
914
720
510
125
475
489
235
66
941
631
360
872
647
541
395
420
22
694
314
701
472
76
110
259
484
167
187
983
909
881
403
436
757
397
612
278
497
353
426
944
155
52
903
50
704
25
94
403
473
242
823
396
923
166
753
667
871
258
97
64
976
498
481
798
479
594
271
360
639
670
657
925
231
224
388
572
689
56
535
717
920
187
621
698
565
158
732
122
478
760
284
119
808
80
703
514
217
777
102
73
369
397
567
959
395
768
397
469
594
366
207
60
994
267
393
453
155
786
658
567
825
124
564
237
354
914
252
59
753
566
375
680
321
736
936
213
552
96
296
942
124
867
249
866
638
52
886
282
41
500
950
393
847
743
464
935
758
162
537
867
277
606
830
184
273
415
707
508
474
694
447
97
298
158
61
252
852
645
767
489
899
835
79
833
798
127
286
819
81
15
117
301
246
855
442
274
329
469
736
12
401
995
729
589
737
88
341
697
752
320
551
572
650
618
600
530
107
860
58
507
879
817
666
155
607
743
398
926
631
29
41
493
105
459
716
294
12
140
814
712
507
225
563
143
396
68
58
620
741
682
175
565
939
571
513
782
874
454
901
554
386
250
89
538
735
895
399
300
780
439
573
215
638
126
28
884
351
319
876
783
221
967
625
839
156
198
23
773
66
137
698
92
257
699
554
350
114
413
184
816
689
269
166
148
7
278
309
246
280
567
704
553
561
617
635
196
47
259
910
901
115
839
407
304
885
943
961
66
479
793
438
791
278
308
297
201
643
929
452
48
343
583
175
647
50
491
715
620
959
878
118
978
58
58
980
864
749
191
673
552
10
37
8
277
32
695
447
909
723
193
886
656
175
368
471
521
415
980
593
630
664
900
987
240
733
331
771
518
455
304
493
201
214
181
46
258
389
146
197
579
668
187
221
586
372
650
955
608
849
392
215
252
299
442
972
583
455
18
587
873
691
834
266
688
803
930
305
35
383
148
586
155
766
930
8
191
168
255
444
309
850
726
332
601
330
620
495
299
259
736
844
154
1000
408
220
434
189
30
608
494
541
869
450
979
181
913
427
503
967
37
827
385
611
885
178
257
626
527
306
766
183
172
65
950
519
640
142
278
427
119
193
325
274
638
224
135
520
959
738
262
21
857
285
165
911
978
98
819
215
943
917
214
268
230
977
816
652
969
388
643
387
522
122
349
236
419
160
923
954
640
229
153
575
702
92
415
458
397
97
333
286
434
597
954
916
2
779
598
355
886
305
552
764
907
386
623
728
593
964
42
112
713
832
979
56
447
648
603
206
9
494
698
199
910
260
511
392
116
298
454
224
730
612
518
23
337
797
606
735
505
726
535
901
507
55
660
404
256
792
134
771
226
22
887
479
148
457
764
774
607
154
851
460
623
248
40
474
456
234
781
401
878
49
607
92
645
814
405
343
480
588
390
549
973
404
221
243
771
515
835
986
3
148
736
436
410
245
857
690
960
193
349
268
142
762
896
980
57
215
112
982
5
426
650
377
99
355
323
676
648
892
466
875
444
840
470
793
22
668
177
673
365
186
753
536
623
852
594
372
235
533
629
254
140
655
102
579
73
656
343
902
981
416
503
106
705
962
408
825
961
725
641
969
585
25
376
19
384
170
612
19
111
238
92
535
845
204
29
857
78
84
776
86
904
48
665
290
344
586
109
815
670
954
856
535
250
830
773
216
838
416
243
305
800
979
19
495
330
186
830
343
148
538
573
807
638
600
553
194
69
289
648
856
410
556
560
117
117
433
348
319
474
925
639
301
45
259
500
701
93
586
151
876
260
67
89
207
940
86
406
278
386
727
153
291
227
700
975
893
229
528
246
363
18
161
746
245
515
866
706
721
808
536
203
739
217
93
68
65
199
23
204
676
803
711
584
134
448
359
169
404
929
468
36
831
162
820
125
656
278
923
362
70
970
801
998
975
282
302
631
411
788
455
315
690
990
286
979
437
754
319
628
521
276
400
528
123
635
32
871
206
553
624
379
415
977
415
258
205
253
360
653
353
498
913
898
832
279
508
910
775
653
832
299
899
270
253
886
659
646
148
75
358
762
204
328
306
442
76
293
762
264
127
821
586
513
205
394
864
160
657
405
794
132
809
683
11
547
266
569
338
760
567
443
26
934
657
848
929
731
98
262
668
495
822
124
451
280
714
575
709
621
170
141
382
678
819
942
60
919
383
102
11
210
438
607
162
531
909
345
302
292
560
154
35
748
216
421
53
668
742
867
34
866
349
719
321
582
372
251
245
688
42
451
574
165
110
472
502
656
377
701
422
650
123
687
661
62
174
950
976
900
461
183
986
915
102
160
488
32
824
803
471
799
867
915
476
562
272
321
177
910
210
1
813
607
261
66
710
338
146
165
824
908
118
752
270
365
29
299
946
602
257
758
820
78
833
153
54
599
593
612
963
70
229
863
599
604
843
138
436
240
898
854
5
418
829
694
588
921
591
666
249
472
791
272
440
106
864
467
211
907
676
518
549
933
556
768
617
399
862
965
632
760
149
984
402
203
155
953
874
470
933
623
271
574
64
24
793
298
709
428
459
141
36
859
825
257
35
266
739
573
405
245
408
248
959
819
89
322
897
223
555
93
384
569
237
666
423
950
978
222
20
761
256
240
620
990
882
581
256
913
267
688
648
630
443
984
673
299
529
469
524
477
719
376
788
167
589
799
651
727
605
373
651
385
869
888
122
939
666
714
934
798
16
352
892
585
6
471
294
395
110
967
911
738
679
201
990
334
930
930
918
895
737
39
154
707
587
722
380
426
375
549
384
475
210
757
86
806
663
858
167
881
29
444
303
968
232
504
867
673
649
703
263
664
212
781
159
215
637
991
589
957
626
244
246
610
531
727
177
111
731
487
576
345
448
824
692
682
23
528
22
818
766
734
136
382
160
927
329
470
756
957
355
490
960
323
810
168
263
427
545
497
208
800
283
958
921
377
522
932
735
864
499
411
539
912
943
894
248
38
611
718
47
695
40
601
9
637
915
940
569
255
528
108
928
183
964
739
131
125
753
460
97
551
941
768
635
5
594
194
605
381
361
714
614
561
543
833
270
252
435
396
533
129
20
524
737
89
98
147
565
145
129
615
545
878
495
302
565
852
510
973
397
985
866
49
32
838
992
476
224
589
171
684
616
282
702
656
298
971
313
721
993
376
143
25
680
952
401
427
647
184
801
119
715
785
220
358
426
256
971
673
928
770
808
702
978
350
169
553
578
492
353
945
517
234
609
444
521
805
289
398
508
613
366
184
721
112
804
454
449
747
26
215
413
175
262
201
218
308
550
770
558
937
371
892
377
468
339
285
173
300
506
6
544
156
658
143
841
116
818
877
963
371
563
233
296
741
288
350
486
868
402
208
323
52
152
162
964
970
991
730
7
855
299
361
462
730
485
809
215
721
674
628
511
215
252
233
164
83
789
48
220
712
453
909
550
842
586
337
124
527
551
528
345
885
997
118
377
160
532
427
704
228
941
480
735
124
420
469
808
576
716
224
12
478
581
370
263
582
766
856
155
923
483
611
378
869
727
178
352
944
618
24
718
141
989
720
625
402
354
356
709
164
379
184
792
641
469
813
78
522
713
945
348
642
692
515
93
232
595
810
127
380
852
604
449
959
451
904
757
745
969
327
695
780
87
57
487
126
660
417
790
526
695
491
497
480
670
224
120
619
64
436
16
322
445
252
765
923
341
260
742
240
463
872
144
808
430
997
867
153
621
636
799
727
244
497
307
388
763
15
49
942
798
64
427
25
475
802
441
564
534
386
780
337
875
404
342
327
129
661
949
109
43
701
402
374
643
427
917
648
579
189
719
574
500
954
240
760
450
257
452
447
661
408
549
325
464
303
409
597
55
103
363
330
680
572
324
211
647
727
652
680
615
353
552
777
694
556
87
649
721
423
928
751
675
179
186
772
370
917
482
616
935
341
105
863
223
908
812
799
96
18
520
950
620
843
479
679
663
88
835
599
279
33
750
712
367
746
711
121
520
746
290
480
982
467
574
65
875
288
401
788
77
765
231
421
576
699
258
230
743
510
608
90
442
293
146
851
750
763
333
608
459
291
423
735
765
192
928
687
645
701
30
918
640
604
326
921
289
581
668
51
421
536
21
633
174
923
288
470
355
709
654
724
420
861
378
573
76
670
439
871
86
74
386
455
286
169
160
286
139
738
238
607
349
27
571
21
559
589
495
987
31
740
687
155
65
25
940
57
784
177
325
935
164
747
616
987
473
449
165
895
742
72
93
559
563
60
87
540
471
835
278
553
299
444
843
259
85
755
114
464
767
938
159
809
524
209
249
750
851
326
230
115
593
21
755
578
862
532
468
218
929
318
249
1
685
848
125
434
489
185
32
891
656
694
963
972
333
873
855
62
857
444
777
744
964
958
921
710
828
52
395
229
329
473
606
792
493
423
251
969
721
52
307
444
515
579
814
219
999
554
409
98
120
73
430
684
918
477
178
952
656
251
826
257
731
645
289
971
868
735
810
335
176
247
730
254
653
728
399
874
748
973
504
578
259
132
836
59
534
574
892
939
993
98
650
292
469
645
506
421
403
162
290
578
772
333
481
442
873
931
998
885
330
778
304
232
377
130
21
303
505
546
631
515
190
473
373
123
610
474
70
722
109
914
351
181
612
204
309
620
805
179
899
875
141
912
115
533
598
494
659
550
885
698
189
151
557
984
160
234
21
481
614
187
239
862
928
631
162
211
659
693
767
128
621
493
874
571
307
201
761
467
65
713
586
815
900
6
273
857
536
669
433
667
853
244
358
340
297
699
188
877
463
47
760
785
843
265
236
7
579
563
715
550
589
386
342
299
909
949
547
359
655
354
677
758
599
185
102
825
89
766
602
462
854
464
92
212
980
245
422
518
528
83
996
241
123
503
936
902
910
118
45
17
43
565
844
39
990
948
388
159
496
326
53
720
645
120
110
207
128
332
301
617
545
176
965
582
232
446
983
189
13
907
5
449
188
729
833
41
365
422
313
763
127
407
330
853
760
425
217
81
173
266
714
685
5
769
677
967
191
932
73
227
471
846
424
910
883
844
17
232
304
683
102
969
517
76
392
625
169
611
410
994
937
831
463
37
128
805
950
619
767
210
96
466
590
565
930
446
480
2
601
303
754
262
976
84
872
413
888
507
632
392
801
329
350
510
235
238
26
545
704
689
44
998
149
266
709
867
586
774
672
565
564
749
783
517
352
869
498
953
265
848
210
838
375
645
930
253
744
605
206
686
922
648
191
564
425
208
711
359
747
512
772
989
408
587
306
560
672
51
932
743
838
201
7
369
900
327
789
979
327
275
967
712
846
541
44
821
356
720
120
826
52
526
719
603
10
698
660
960
62
69
707
720
344
634
944
884
993
765
343
789
508
723
581
545
160
596
901
769
973
195
666
306
848
693
709
471
258
774
253
59
472
167
801
71
17
729
686
29
832
974
98
116
25
197
73
829
823
644
731
318
937
91
647
108
470
944
288
205
432
309
896
798
215
254
327
789
155
103
41
227
797
595
969
74
430
508
705
400
864
723
90
249
984
743
839
129
495
526
116
525
818
397
17
933
509
547
351
221
925
865
134
263
419
396
39
686
309
636
867
984
829
73
164
208
146
983
716
383
107
584
298
162
892
103
18
610
73
319
869
283
405
528
36
123
260
505
467
940
898
560
259
973
334
272
901
221
180
409
921
737
830
614
884
82
139
830
87
161
972
169
633
145
416
250
285
40
49
757
614
715
597
827
451
165
592
568
970
873
331
165
588
419
803
614
686
31
485
186
223
20
371
400
695
390
43
263
734
60
739
594
106
190
920
451
161
93
478
158
93
968
365
652
671
152
707
776
363
36
794
129
58
713
141
377
486
874
360
109
510
176
74
175
476
468
878
906
498
478
508
348
97
753
820
24
661
544
890
676
786
821
525
940
895
508
233
423
134
477
335
782
337
912
605
372
919
922
660
650
489
809
788
436
287
693
643
987
550
812
44
844
411
121
815
339
294
361
563
488
194
963
10
597
468
629
724
881
772
618
502
163
907
529
629
103
818
339
424
741
712
190
560
497
337
564
896
757
708
189
436
784
118
783
144
580
631
126
675
566
105
997
161
773
682
754
124
776
616
347
673
729
631
922
556
479
185
518
68
262
767
830
537
304
715
795
712
849
812
71
414
731
557
731
310
863
633
300
276
292
904
269
356
892
28
800
801
240
132
845
468
357
585
752
67
533
53
737
568
274
480
718
904
910
342
456
85
787
335
544
788
772
90
114
946
901
24
35
719
100
786
221
438
51
413
433
980
498
906
497
387
56
403
81
452
391
203
398
307
228
278
349
21
764
705
445
885
820
878
826
122
654
138
867
74
559
386
578
607
474
118
296
391
383
283
597
429
412
754
160
648
341
80
206
318
362
126
316
401
638
476
407
546
111
119
742
597
772
865
899
760
959
550
785
710
791
905
50
867
269
940
402
660
692
525
940
116
957
704
207
88
844
417
900
115
63
758
365
469
556
831
676
880
736
811
603
602
116
214
308
854
447
810
536
618
600
849
440
582
388
925
966
761
990
913
446
387
896
745
517
46
980
107
688
932
648
278
684
562
423
851
277
536
522
31
901
261
42
162
962
552
320
515
758
214
6
241
475
774
927
75
60
116
803
30
781
335
834
9
743
270
527
615
117
215
340
541
893
879
597
906
930
535
676
4
174
967
416
502
775
151
875
138
638
973
655
375
552
170
939
497
265
344
381
447
556
762
241
269
222
860
758
341
439
640
895
918
404
893
68
717
681
750
619
780
509
229
667
316
395
250
471
856
698
765
840
974
122
545
829
226
804
85
633
56
793
920
727
698
25
719
159
357
608
768
804
352
734
247
584
779
664
26
993
598
713
859
668
419
36
658
757
985
668
669
239
912
817
959
245
141
13
933
486
978
322
609
554
702
267
19
148
951
554
380
941
558
315
241
713
845
327
570
521
477
976
222
226
426
722
862
132
894
270
753
210
715
264
197
326
768
707
673
429
70
399
325
303
40
169
949
836
713
577
967
936
274
977
656
553
169
302
901
244
842
164
603
903
826
700
426
448
33
339
843
40
649
2
275
82
692
950
507
607
996
185
260
719
331
880
366
267
744
556
54
307
935
96
990
49
146
319
389
664
360
895
632
917
224
542
988
20
64
765
507
691
315
943
254
165
245
473
674
140
386
314
877
23
81
561
408
491
53
620
832
415
879
916
369
702
290
546
500
749
925
567
859
452
846
702
935
307
40
318
715
239
699
19
113
652
541
831
680
861
19
211
211
257
515
372
481
551
15
706
141
233
926
615
628
378
882
813
745
17
290
395
870
334
834
872
116
605
324
770
195
975
574
531
637
651
5
215
544
778
694
12
379
397
227
342
14
199
619
716
804
520
863
898
547
954
872
92
323
801
529
47
504
486
34
7
428
299
609
98
230
195
746
663
823
978
186
591
942
481
437
633
911
193
307
462
293
245
521
457
878
125
462
207
675
163
780
154
148
577
847
68
258
886
927
168
451
602
955
409
406
69
633
499
77
696
703
497
21
479
978
848
22
853
407
207
232
123
764
262
498
891
440
253
298
972
367
774
976
929
599
632
32
529
542
893
141
25
846
605
73
779
772
916
16
975
190
24
681
620
244
407
303
968
542
611
641
928
190
820
658
624
544
783
750
224
9
914
819
930
790
736
609
203
341
971
218
500
14
132
912
678
904
566
643
18
823
898
804
762
808
917
324
908
589
558
24
67
855
307
860
149
759
971
245
703
935
202
182
469
865
645
857
152
775
552
394
235
291
686
513
738
688
857
74
457
649
373
976
32
537
59
543
305
51
453
131
255
273
294
865
733
47
647
926
373
220
805
676
785
216
789
495
981
997
581
888
86
936
176
370
247
976
633
953
835
244
589
257
67
515
133
631
579
683
54
440
551
719
175
850
250
993
181
63
198
557
184
996
435
439
904
394
402
376
804
376
985
22
934
903
75
463
527
368
97
866
933
558
253
838
43
42
190
858
249
729
886
809
556
723
515
659
345
270
560
643
39
266
427
353
332
138
12
219
941
431
233
534
841
519
189
69
897
203
768
446
968
198
822
559
697
493
300
476
914
585
755
876
426
782
602
253
595
607
508
735
187
230
797
278
394
35
934
190
373
141
407
720
236
360
229
796
473
895
354
105
644
485
637
591
471
424
469
499
79
928
78
684
63
7
175
128
314
315
300
21
409
926
399
699
4
334
409
318
584
956
801
869
414
314
989
161
802
864
215
275
101
35
225
394
52
33
241
414
902
878
191
820
530
886
257
699
891
705
351
791
671
543
562
969
883
864
683
130
940
318
740
251
764
186
238
121
252
83
475
759
695
600
480
295
375
580
279
850
941
110
502
487
986
503
407
504
640
264
893
154
223
379
542
470
565
341
990
957
928
701
797
597
549
985
956
274
967
530
733
818
880
558
51
301
116
191
466
886
466
375
281
511
724
178
530
984
919
906
122
623
138
326
282
313
219
90
8
976
59
128
472
92
503
268
370
334
468
344
307
818
30
585
265
6
234
15
944
100
521
288
28
865
399
690
534
958
101
603
946
882
88
487
986
549
850
251
639
433
74
941
470
698
763
937
941
677
875
661
462
356
115
446
822
26
9
758
36
249
14
103
44
305
386
378
110
381
684
256
654
442
872
710
752
331
150
48
282
300
216
91
268
284
286
848
210
169
736
232
815
351
56
502
469
269
128
988
911
43
401
758
894
706
967
660
204
660
932
750
818
107
593
223
814
870
713
942
365
341
985
70
430
801
43
900
52
262
53
257
792
56
145
926
495
282
934
802
604
642
163
572
239
915
945
492
247
125
61
198
137
429
586
200
3
665
97
955
846
45
838
926
851
706
104
699
536
79
658
669
247
929
198
364
955
717
301
823
687
495
728
60
100
479
265
410
55
806
484
529
636
332
205
307
966
273
757
213
421
558
877
432
687
367
967
337
598
863
355
659
860
524
611
479
673
617
485
679
386
432
214
622
57
501
278
92
442
268
55
988
10
499
165
236
334
162
51
422
629
465
996
562
306
494
32
184
862
321
584
497
528
948
347
223
148
594
392
693
601
903
896
546
422
998
890
439
946
118
365
712
37
178
700
597
189
52
569
731
690
798
714
313
537
980
900
329
684
961
391
401
640
779
184
656
969
224
89
470
864
627
993
758
483
480
200
305
65
100
775
881
252
929
452
164
987
807
436
740
691
449
933
353
920
910
512
997
403
718
761
311
48
406
343
286
928
963
846
796
356
420
582
116
886
110
73
469
797
799
183
929
623
366
859
998
925
562
749
108
449
570
631
44
950
810
30
110
217
551
8
23
529
868
424
317
610
613
867
572
751
590
974
777
636
426
301
93
799
112
452
345
39
243
442
858
255
967
720
826
647
784
56
465
199
673
897
799
381
259
800
79
942
892
606
360
236
244
498
647
603
643
260
986
158
307
867
122
590
956
714
397
578
822
169
27
622
995
950
283
220
334
273
388
266
70
659
111
818
348
305
495
696
542
428
762
204
635
693
363
271
894
77
231
946
590
607
474
641
23
684
893
411
811
124
845
951
186
342
179
647
365
503
930
720
477
732
943
448
951
248
746
646
454
576
732
764
241
455
235
239
166
595
460
99
761
630
35
896
555
579
736
328
158
638
984
13
271
650
455
296
888
482
527
904
191
589
181
682
877
506
228
358
376
67
265
186
398
788
673
891
954
756
560
572
333
528
369
410
664
827
747
344
72
234
301
232
797
490
514
290
154
212
290
874
642
434
557
928
387
620
594
631
116
973
672
849
314
990
134
357
280
407
466
800
964
327
793
686
598
225
163
844
128
65
343
514
397
75
174
971
801
583
96
104
58
148
293
449
194
566
68
80
187
953
746
759
987
923
379
178
628
8
324
765
963
974
441
440
932
167
660
859
118
804
869
51
708
970
644
916
223
121
641
625
943
110
907
724
30
482
652
624
329
210
55
448
954
403
958
551
41
332
183
519
438
198
884
724
378
972
979
890
548
723
403
760
145
31
987
771
439
307
980
879
965
829
872
943
993
794
98
884
528
277
220
774
336
889
742
646
60
162
23
382
284
300
440
423
374
598
10
83
511
641
640
159
194
993
616
32
133
802
631
387
250
919
376
141
768
459
752
190
819
876
16
296
696
821
451
752
424
84
962
896
564
567
786
733
818
717
339
163
580
242
474
611
908
985
326
203
537
59
141
530
421
287
778
192
705
800
215
260
334
672
633
455
615
14
876
144
150
690
545
617
134
687
468
837
83
415
75
267
725
329
623
178
718
627
810
21
978
340
798
102
33
907
956
529
809
298
732
166
237
936
819
360
96
906
668
827
434
751
747
45
68
623
3
295
500
344
765
718
142
954
146
448
323
468
267
534
71
594
584
490
513
417
698
991
996
170
209
492
927
634
18
982
69
336
899
782
905
63
41
145
824
972
375
988
463
51
814
261
19
65
184
423
196
717
821
847
651
392
223
597
161
479
911
162
901
599
854
686
519
90
205
606
488
805
621
289
31
452
717
504
960
701
78
767
341
60
776
753
181
98
886
691
920
304
502
397
367
664
531
859
389
791
199
630
387
355
552
596
260
102
944
495
755
577
842
355
500
271
496
465
580
977
729
100
209
109
665
411
596
414
724
190
141
444
417
213
339
656
135
593
701
225
952
971
241
993
273
700
181
107
201
160
364
469
326
624
84
708
169
715
547
245
968
471
65
836
977
140
245
279
149
557
778
39
638
71
947
483
670
287
83
667
903
108
829
336
377
215
561
700
802
13
282
125
266
250
188
55
23
368
784
760
944
971
976
327
329
2
479
74
453
895
938
331
9
344
345
887
858
37
124
470
738
119
967
685
776
244
379
102
448
298
432
174
648
463
710
960
307
309
257
825
409
577
710
937
569
655
306
677
937
757
136
62
741
346
768
41
243
47
593
207
867
747
712
44
283
806
820
720
171
500
32
843
875
776
536
587
78
816
668
997
710
7
889
64
343
604
623
804
417
988
701
791
875
185
440
595
373
664
833
823
903
314
218
338
648
624
854
354
779
998
50
464
527
277
420
14
71
908
436
922
534
63
138
499
758
433
592
672
70
873
321
852
773
616
509
439
301
603
561
163
878
53
573
519
939
403
268
635
604
836
232
996
583
439
175
26
709
312
859
156
790
20
990
126
431
818
509
390
839
473
634
196
683
124
924
169
899
229
819
271
450
790
462
3
511
472
154
730
293
387
84
56
841
192
523
307
301
186
619
203
505
755
181
212
988
457
10
50
956
649
718
18
54
462
14
358
995
682
720
297
658
173
108
816
694
448
418
831
642
750
264
332
41
548
848
411
246
542
815
553
624
894
607
152
454
595
512
117
175
582
448
97
103
479
721
117
22
528
46
459
559
449
727
908
217
77
21
498
991
491
596
913
380
860
769
405
511
77
319
378
230
243
523
125
468
681
654
546
820
861
400
160
348
216
48
785
973
354
928
873
988
505
963
396
946
929
284
203
225
303
341
290
785
807
319
240
686
612
103
536
64
738
79
781
618
956
469
641
215
294
340
452
193
433
664
791
858
120
852
424
157
890
484
920
81
54
569
117
998
1
649
896
263
879
531
564
245
370
756
485
204
245
96
300
998
305
874
957
729
415
669
25
286
896
245
883
436
859
437
266
762
953
587
831
889
746
323
6
354
941
596
382
194
553
26
825
190
51
771
274
668
28
539
95
312
431
47
810
134
872
68
337
321
504
721
528
940
508
594
41
245
76
371
121
627
487
552
106
550
671
414
803
247
290
451
245
381
657
960
778
818
646
581
318
133
863
875
417
56
138
130
543
179
200
17
566
200
665
720
638
196
804
628
49
307
464
924
295
482
792
747
267
456
569
274
167
679
660
843
712
898
704
427
938
733
730
605
907
73
922
95
583
662
577
331
447
905
861
492
220
585
239
122
674
239
10
548
424
155
901
392
696
570
210
939
732
836
519
861
161
116
844
765
726
339
280
769
747
46
182
162
856
202
908
850
869
912
904
94
407
290
124
405
470
829
151
978
875
811
819
739
616
504
417
642
7
983
284
278
240
3
321
359
784
968
520
371
130
159
860
240
105
257
541
979
611
27
509
671
888
466
484
167
158
878
650
413
220
710
816
7
905
196
972
966
998
127
669
210
433
848
548
114
735
933
961
626
181
18
657
941
80
169
987
36
227
418
168
995
953
905
455
371
467
397
979
290
133
441
836
445
217
68
261
873
677
548
155
364
556
44
959
733
151
535
60
699
903
911
84
784
145
442
960
143
411
512
815
454
690
909
258
217
479
622
246
452
521
983
91
722
167
476
46
340
900
72
583
836
191
861
951
104
658
631
740
248
633
838
449
955
497
384
272
430
107
948
726
375
253
768
328
515
286
15
690
807
406
135
987
582
964
750
855
997
617
910
96
460
756
133
913
236
801
43
330
60
611
153
46
459
754
638
578
872
14
340
295
235
573
461
754
460
107
387
657
402
853
224
655
836
291
501
412
938
116
938
899
146
116
891
162
679
562
234
870
278
757
739
257
541
347
809
202
527
330
294
886
765
440
727
968
787
328
40
187
295
465
864
793
59
651
178
355
979
489
187
487
720
208
144
155
108
225
627
593
96
541
699
863
426
135
316
139
147
305
181
407
211
764
522
429
927
1000
433
132
122
920
487
158
582
331
662
161
103
164
743
687
368
773
216
900
23
380
813
508
812
28
818
530
350
799
883
640
726
295
357
503
662
658
135
220
853
608
916
803
79
965
514
679
826
555
862
125
786
652
100
703
814
818
33
198
349
715
156
65
662
170
129
772
975
797
409
381
388
870
292
872
849
357
364
984
158
905
564
44
622
533
630
926
712
696
810
421
789
314
201
143
312
189
279
764
922
143
253
321
959
38
473
15
572
995
617
898
905
896
211
838
583
913
720
246
7
393
351
317
299
204
90
883
541
893
106
598
965
867
817
422
267
405
738
900
612
714
420
734
257
331
712
534
320
399
364
893
42
229
516
593
346
550
809
636
863
167
890
568
498
236
68
973
101
582
144
432
15
3
387
125
73
427
837
275
329
976
250
777
685
577
382
640
930
705
287
87
673
591
377
812
827
490
899
925
364
952
769
103
277
688
792
890
16
728
126
770
139
451
442
86
473
730
161
954
259
33
830
776
244
13
697
679
736
507
748
930
221
424
564
629
553
216
923
784
159
193
573
797
26
334
517
110
630
699
294
962
855
784
235
465
730
963
144
504
47
941
141
330
621
910
935
962
293
126
411
681
588
616
260
692
342
767
452
982
636
388
497
171
976
330
407
492
624
202
897
918
594
231
877
609
118
230
857
857
709
611
390
478
701
752
109
808
981
167
116
266
861
59
583
400
32
864
815
424
944
214
112
536
884
719
545
18
632
565
518
897
827
949
940
362
309
280
224
734
180
286
744
136
189
506
360
228
411
625
419
953
229
118
797
468
465
587
560
465
570
567
796
690
114
274
7
953
179
28
4
582
980
90
813
741
408
281
349
93
686
352
508
86
7
819
772
556
782
524
771
87
617
869
330
920
949
580
617
756
676
152
567
808
150
292
989
735
544
733
139
726
691
400
388
696
598
311
400
144
226
206
631
56
6
477
464
175
292
362
966
995
495
449
57
474
445
936
593
451
775
109
353
183
799
213
51
797
676
705
751
24
828
464
466
581
742
403
860
847
842
690
664
83
63
232
935
288
467
175
503
802
510
105
949
740
401
646
919
322
717
295
726
203
495
654
573
795
924
280
616
943
572
738
481
834
719
827
137
493
238
694
58
537
981
980
126
426
945
102
47
352
157
239
20
10
31
764
779
259
399
322
683
686
146
739
498
310
228
518
734
641
798
61
257
59
552
379
82
934
729
141
403
581
25
763
730
672
620
193
489
683
611
300
442
176
81
551
134
699
263
521
769
976
827
775
52
191
307
866
450
369
401
947
34
694
867
410
830
771
992
761
513
273
775
240
462
652
175
748
937
445
428
221
17
173
876
659
704
272
679
477
8
10
84
181
451
225
918
832
572
137
264
676
673
31
79
515
155
237
381
474
190
882
598
124
526
856
137
583
242
88
703
495
43
624
516
431
350
59
70
920
910
390
1000
880
657
218
266
604
141
487
511
863
629
381
688
326
542
122
958
227
409
109
554
833
601
252
380
780
226
281
207
28
184
52
242
534
376
662
547
579
363
193
9
927
491
872
283
369
258
709
276
843
611
591
245
412
71
310
833
228
59
185
934
120
194
700
776
386
986
861
509
539
274
168
469
863
742
770
119
975
697
214
721
99
172
573
335
887
909
325
489
755
825
802
533
376
159
901
229
385
177
438
347
913
849
274
44
600
350
44
926
859
620
820
798
763
425
396
43
413
44
272
831
881
244
276
448
834
868
87
161
492
77
268
654
951
653
155
981
704
947
989
592
144
673
901
885
885
242
34
360
111
124
776
343
25
394
447
250
141
587
803
332
457
833
108
779
591
547
873
871
563
200
90
623
43
594
662
116
531
187
92
567
31
131
148
128
63
145
908
273
360
187
750
530
458
712
299
378
611
981
470
329
721
941
442
237
342
5
174
795
933
272
739
823
381
722
281
233
389
161
556
613
633
523
795
290
834
687
49
991
610
414
8
448
397
980
117
795
561
268
726
466
936
340
456
449
29
416
660
841
906
113
487
127
494
128
956
193
808
638
592
156
433
178
191
81
658
132
591
450
412
650
855
369
284
101
977
927
803
746
81
299
704
397
469
604
987
865
320
736
385
371
227
460
475
946
774
641
449
504
635
537
672
337
176
81
629
245
663
756
7
91
495
931
506
102
902
711
209
272
228
185
539
716
795
412
187
89
632
225
376
526
489
832
960
777
909
11
976
364
148
280
284
234
142
365
643
338
600
525
353
6
751
893
882
736
13
417
585
616
449
225
91
182
746
269
592
453
229
335
680
865
369
87
355
385
56
877
965
855
474
494
793
118
324
164
256
215
231
293
278
330
523
980
57
813
707
375
492
916
948
806
539
758
815
249
738
968
649
667
835
965
64
231
351
320
15
485
6
668
732
759
565
336
147
747
218
258
520
601
194
694
306
369
309
917
222
424
914
707
590
82
502
694
358
823
94
42
116
240
50
81
917
220
766
898
940
193
809
358
713
8
308
690
259
292
247
667
862
839
251
578
685
551
621
574
986
830
517
730
458
311
182
424
267
922
424
478
230
676
44
912
993
945
405
136
941
314
271
255
678
880
74
842
138
658
203
284
346
887
850
831
47
318
555
295
749
575
412
72
877
870
248
27
150
477
223
75
95
194
348
943
841
605
879
694
569
492
437
257
493
963
555
565
837
226
714
882
242
442
88
992
980
521
345
335
60
63
694
14
862
408
224
252
198
310
712
558
166
746
481
240
232
617
473
831
32
966
74
597
966
686
528
759
248
797
606
766
250
438
558
653
572
634
313
537
773
105
674
278
810
881
538
894
580
766
327
420
247
818
513
479
842
875
696
967
76
645
11
51
928
938
418
242
796
776
3
914
257
953
349
619
680
323
732
155
945
633
826
822
215
29
898
132
965
966
659
931
936
554
341
888
348
279
295
37
55
801
749
756
567
307
405
351
658
946
481
867
645
330
536
82
637
599
583
492
129
86
803
271
628
961
997
845
883
671
560
892
618
134
693
496
134
847
826
761
632
650
314
803
874
636
550
959
390
936
626
390
457
133
775
207
845
99
991
242
853
888
868
333
847
990
742
23
243
878
61
894
467
286
309
498
424
772
906
988
426
936
419
825
63
439
466
798
291
832
578
884
384
830
687
279
982
634
827
53
881
171
377
941
425
104
1000
643
172
361
720
146
532
829
165
992
841
783
250
748
430
559
436
809
954
923
487
365
802
574
254
707
842
117
687
800
511
364
871
159
860
859
469
72
503
611
985
471
730
42
370
152
751
273
307
225
880
535
664
955
693
895
694
476
633
94
302
5
875
102
854
331
495
260
484
327
617
932
614
29
838
697
902
470
316
620
287
254
957
963
652
772
661
829
956
884
650
215
517
812
381
20
318
471
62
28
213
658
776
376
456
499
966
867
301
932
515
301
957
211
831
142
180
410
931
620
622
262
840
749
799
460
765
758
830
53
549
680
501
361
69
948
536
511
745
856
497
346
428
841
721
525
60
52
573
391
595
277
110
565
900
908
183
924
481
248
102
443
408
839
8
885
550
756
314
152
865
443
803
915
378
492
184
188
478
647
893
888
945
499
482
274
555
845
972
128
285
839
595
836
648
414
6
458
522
831
325
595
980
137
90
85
805
642
196
417
934
899
944
9
792
928
23
773
338
599
316
992
895
77
204
518
519
961
165
20
414
821
728
45
874
549
342
737
1000
241
788
489
411
66
351
364
874
278
949
628
628
263
587
700
74
52
319
772
407
57
265
135
672
965
309
784
268
366
808
800
453
497
301
196
206
653
390
334
537
117
955
354
492
308
82
65
353
283
945
197
698
885
88
997
60
943
392
485
303
110
525
178
53
193
565
925
122
96
986
513
36
592
717
330
605
213
232
368
608
869
427
589
225
549
358
942
962
483
798
348
773
166
340
495
702
253
384
279
798
179
241
303
34
41
566
339
196
737
435
956
743
874
93
380
150
745
591
87
687
867
598
2
360
417
739
586
936
205
822
152
875
3
671
813
208
60
694
664
366
229
264
518
367
72
396
981
695
152
628
333
780
261
812
241
470
142
72
901
183
770
933
9
217
601
814
179
814
346
288
625
238
527
671
428
447
800
158
308
510
612
483
143
746
686
5
94
495
252
160
105
140
984
196
256
93
769
911
351
264
57
722
870
809
542
668
479
138
391
575
956
487
650
639
953
219
44
922
100
732
641
502
190
526
297
871
334
547
900
402
85
79
957
436
576
947
304
551
820
123
454
575
514
754
321
683
807
555
480
384
601
206
339
375
339
605
991
374
88
819
344
670
320
59
992
382
476
514
732
252
406
438
368
540
289
106
707
265
724
989
123
456
490
140
995
242
188
248
928
6
23
64
177
937
123
635
391
800
185
365
160
751
683
877
772
41
675
30
834
688
555
151
997
608
75
737
79
89
703
174
193
550
183
109
482
762
812
810
209
840
892
88
370
975
756
491
835
173
297
270
333
762
535
762
702
710
556
353
673
626
245
913
131
290
977
367
365
417
68
864
444
881
108
65
733
968
36
148
853
743
302
188
320
939
448
509
85
427
395
298
838
487
968
715
621
808
308
488
272
680
901
859
576
881
829
489
522
715
301
43
345
879
99
114
318
189
617
137
52
805
389
152
77
663
707
172
967
621
486
808
851
333
179
304
880
747
792
546
272
349
201
357
421
369
807
874
188
694
205
243
610
471
739
534
240
709
429
804
683
84
673
551
627
765
400
398
307
582
373
88
834
60
312
547
758
57
747
537
308
574
98
585
706
850
151
554
55
781
823
677
525
739
971
995
68
397
125
891
469
363
95
547
511
657
791
987
693
406
664
561
797
849
412
612
607
825
205
747
488
31
755
151
444
882
609
679
572
437
428
617
129
756
207
621
828
965
585
610
860
744
743
880
818
240
830
51
223
937
246
993
87
456
613
766
843
547
313
858
582
435
559
179
103
596
245
936
831
792
593
534
204
622
609
493
119
791
253
170
792
331
982
281
514
582
519
807
151
404
194
241
693
517
112
153
136
651
561
247
672
129
143
627
839
819
306
600
391
671
728
326
306
226
565
780
844
342
285
333
558
607
980
739
878
940
380
259
417
653
631
899
7
537
178
231
848
172
946
441
719
333
908
184
516
846
254
938
820
924
13
753
603
281
154
616
757
798
454
417
684
181
635
927
801
491
726
802
768
744
3
958
625
622
394
39
290
363
822
592
170
402
303
406
311
739
306
505
90
511
694
835
965
606
58
273
769
714
628
733
903
13
865
615
946
426
712
625
230
978
150
552
954
767
21
493
800
834
992
823
117
189
953
528
725
458
503
580
720
343
616
817
15
961
923
50
599
531
693
727
558
10
544
395
667
42
420
599
576
471
808
232
485
354
408
650
74
710
313
54
646
915
118
289
567
360
842
7
597
596
128
794
232
817
264
175
373
83
761
464
488
408
699
541
839
934
31
585
913
885
958
965
667
323
660
723
146
780
187
91
740
112
881
185
533
327
158
643
51
867
655
480
677
505
379
40
623
6
753
823
613
696
682
767
721
83
929
201
569
791
667
193
903
375
49
283
464
1000
658
161
856
703
152
843
467
520
292
252
80
887
978
517
422
493
342
193
137
137
697
862
118
926
953
372
275
578
950
883
242
694
641
685
597
746
48
998
870
850
489
47
744
596
285
938
628
932
14
706
344
185
963
985
340
135
267
450
367
19
738
581
41
884
819
702
794
252
313
440
395
587
926
975
752
981
823
525
603
988
160
64
822
631
329
3
941
41
204
140
454
882
319
4
432
142
433
312
690
127
84
229
826
758
720
184
168
213
515
812
980
431
210
990
649
445
515
272
808
496
541
504
797
303
971
143
154
401
743
41
369
998
621
673
364
631
977
103
37
160
11
361
244
897
269
710
112
11
897
655
637
735
345
967
943
203
6
56
486
337
265
436
404
935
448
652
672
310
376
576
19
377
397
291
325
657
837
946
10
804
581
179
452
249
49
953
936
788
155
342
930
29
441
114
102
640
269
717
795
901
872
964
509
928
200
893
991
820
225
956
363
415
887
184
68
244
217
990
577
729
228
216
571
751
251
41
128
668
293
92
623
715
534
566
278
842
13
555
384
455
907
790
909
520
126
541
372
284
173
437
759
342
183
756
790
895
619
621
255
43
134
511
934
129
139
618
218
433
371
573
970
997
963
62
527
855
222
151
308
817
652
703
816
996
348
808
30
904
474
305
649
425
269
214
790
701
155
15
331
797
410
443
787
132
341
341
812
894
392
774
715
575
554
507
172
52
820
120
649
183
333
23
128
153
762
407
997
563
503
939
941
783
852
622
392
133
200
518
774
249
20
614
388
143
484
618
397
942
903
367
697
82
427
980
258
160
76
311
82
413
303
766
534
454
108
892
832
430
656
968
621
2
303
934
507
696
558
180
646
884
739
658
307
767
98
866
536
113
474
973
162
59
760
946
906
7
628
353
920
251
555
824
418
763
377
762
890
189
995
712
953
897
601
185
554
331
979
968
37
279
304
666
407
907
818
879
838
945
152
770
850
741
260
516
238
93
614
754
22
235
629
611
835
407
779
625
472
731
305
342
364
102
10
838
203
426
760
206
294
235
479
683
294
568
225
315
867
515
745
297
673
466
886
451
851
702
548
708
977
501
657
462
951
10
468
95
678
931
140
504
389
705
684
308
58
875
627
326
609
797
315
612
665
965
535
145
558
622
802
16
397
92
76
927
554
512
317
970
315
565
294
171
93
569
208
779
169
715
646
327
173
369
365
164
621
544
874
478
114
338
988
740
816
90
645
716
250
341
524
181
915
758
337
569
789
568
423
823
23
404
496
249
839
511
602
370
405
812
191
609
776
67
638
183
469
32
987
613
61
48
173
565
866
84
1000
86
497
297
541
555
31
272
663
532
189
253
647
441
428
46
933
420
660
755
898
321
534
281
545
489
726
391
682
617
583
412
705
960
331
121
463
227
977
146
762
21
801
398
741
98
947
433
207
458
498
918
279
723
872
547
580
453
544
321
205
540
743
869
709
474
821
32
371
321
355
457
576
104
804
732
205
322
594
236
630
728
420
898
88
263
686
221
116
395
642
311
115
812
878
981
794
692
419
726
45
541
397
374
424
112
5
204
799
74
605
372
342
677
199
337
752
308
381
362
814
999
509
278
573
99
867
688
616
759
156
263
399
26
235
181
790
708
826
336
332
812
646
204
170
784
615
50
977
932
985
865
381
584
821
200
590
68
638
340
894
389
337
285
188
836
607
166
542
828
364
173
589
989
522
751
291
191
36
291
322
753
100
510
582
544
971
833
486
933
254
748
936
199
941
65
25
343
995
160
976
580
544
480
165
33
957
541
68
520
798
592
882
510
983
860
484
672
438
512
169
524
384
575
862
78
499
682
580
882
368
537
134
597
86
314
655
672
894
25
349
821
969
697
843
856
102
623
22
255
870
513
994
179
234
724
223
958
376
409
340
861
417
495
773
31
889
864
884
10
19
500
705
876
224
752
801
9
898
742
641
351
631
760
270
183
619
996
61
834
374
442
266
761
688
457
315
63
507
72
749
124
161
809
692
750
765
942
129
736
461
10
169
598
5
216
46
554
230
874
246
909
89
242
282
177
705
932
523
143
367
932
387
521
564
676
309
487
587
920
80
683
929
152
14
983
3
725
64
171
160
932
964
153
279
43
617
894
347
881
145
303
104
648
523
334
780
210
858
548
300
196
549
744
350
354
551
72
458
689
405
803
711
537
648
964
961
687
731
412
896
789
132
537
958
383
62
401
24
806
832
284
775
25
17
551
784
362
887
302
512
830
588
146
575
805
599
98
573
339
837
182
588
759
780
623
865
144
442
753
499
589
802
290
938
64
624
890
184
479
978
674
132
436
838
160
547
919
645
594
465
366
872
870
229
665
499
16
551
425
492
133
604
135
319
240
891
457
836
798
580
869
584
151
209
310
304
35
719
470
888
783
480
665
999
572
778
723
237
134
602
34
615
308
775
525
79
254
446
629
570
791
376
845
273
391
30
745
914
800
255
232
965
652
215
440
530
248
564
533
75
681
698
75
194
223
771
96
991
891
55
260
960
65
1000
866
93
120
954
993
955
778
188
333
384
405
153
247
138
624
929
260
761
403
229
893
235
924
567
694
38
622
215
869
294
680
907
308
45
453
385
266
987
119
93
264
516
126
517
541
863
283
626
271
140
582
25
129
75
292
309
991
556
897
325
514
214
959
665
425
20
880
71
202
47
822
631
828
377
274
833
458
557
330
863
251
713
681
698
297
994
322
708
683
643
507
334
981
608
426
100
373
656
403
859
379
427
461
841
444
922
656
139
667
228
427
170
231
436
759
527
447
998
995
326
668
42
398
749
844
221
981
105
129
877
873
518
326
436
355
513
425
979
652
702
364
806
838
593
780
644
418
658
306
552
103
166
367
841
533
845
650
780
763
107
145
43
528
736
304
516
246
474
251
690
381
591
900
565
324
343
503
660
942
276
815
406
63
741
281
945
243
349
604
700
653
697
816
382
884
471
269
34
795
638
574
519
660
367
380
279
439
196
620
495
167
360
700
916
732
376
919
352
586
89
994
255
706
294
686
373
711
992
126
985
667
895
804
308
968
55
226
222
909
968
157
147
348
853
494
118
268
471
369
390
234
143
868
276
116
133
313
459
81
834
223
497
764
791
52
555
780
930
632
441
695
580
629
720
228
956
449
800
297
72
609
638
170
609
36
918
606
696
54
913
796
257
983
62
445
656
560
371
146
624
778
256
47
429
935
262
159
75
454
643
416
378
156
12
981
815
146
731
63
160
210
261
650
988
304
611
303
657
562
113
734
806
505
717
94
603
891
769
525
329
499
221
939
218
433
615
568
342
565
50
789
245
509
589
646
972
443
494
790
817
455
263
974
541
846
351
414
127
848
628
641
502
657
416
585
868
481
941
249
904
674
368
307
931
657
335
556
500
594
546
306
613
347
901
337
631
684
912
551
280
383
811
696
358
251
156
617
362
803
589
362
287
393
208
132
410
543
999
295
879
292
630
485
25
852
553
197
776
779
572
837
181
408
73
582
13
919
339
666
860
716
674
111
166
230
214
819
368
781
605
504
501
54
653
308
986
11
452
113
65
942
763
434
323
954
561
716
570
639
832
78
919
393
141
650
18
44
619
120
807
63
986
4
548
906
342
415
945
629
8
884
162
222
442
487
384
844
810
105
960
225
124
358
795
309
696
206
132
807
965
852
973
72
637
788
324
356
111
62
175
93
772
211
168
759
325
332
811
94
832
594
759
785
277
431
503
152
434
927
108
222
258
862
217
362
856
369
748
425
608
778
651
539
297
357
576
622
975
451
692
894
495
324
84
40
306
596
467
395
186
995
193
671
635
858
864
544
537
589
257
840
527
546
974
172
76
560
572
845
324
149
743
694
634
123
25
957
384
590
901
874
339
262
98
364
690
916
291
935
193
568
120
330
969
658
668
291
100
307
460
622
57
684
104
20
885
698
298
289
606
855
407
789
30
593
504
154
471
102
370
382
464
845
763
768
565
944
506
423
757
387
789
149
345
549
433
464
439
290
946
512
257
484
406
112
126
477
324
963
724
941
436
494
677
262
323
576
126
240
491
605
532
301
618
177
328
200
618
387
552
36
511
660
455
837
767
833
692
242
257
644
260
995
557
25
528
250
734
68
158
814
344
814
40
361
333
800
980
399
45
11
914
269
942
558
516
630
13
862
899
472
490
888
152
818
231
481
453
64
13
854
191
53
223
662
182
670
757
724
5
167
226
204
954
308
440
388
567
35
524
932
953
494
825
837
659
357
268
385
851
854
60
175
482
947
497
330
805
869
84
957
386
370
47
933
738
368
642
975
468
651
167
348
560
736
674
47
940
294
304
628
685
65
354
852
150
388
489
994
321
714
897
925
623
971
473
3
491
5
762
918
955
623
423
659
349
745
648
395
319
232
412
951
27
857
821
766
892
469
550
218
951
34
365
275
130
183
907
558
678
819
707
115
647
789
732
822
777
772
393
661
54
351
811
471
295
547
784
881
228
944
604
677
18
459
327
753
392
244
316
833
1
139
980
581
958
109
905
225
29
112
220
127
709
100
27
893
166
30
906
163
307
405
262
331
616
360
37
474
111
378
487
422
355
904
516
949
827
236
512
341
973
185
963
91
249
527
712
8
812
709
540
90
891
512
941
602
253
602
674
705
721
841
243
471
960
421
538
151
109
324
404
249
842
547
530
560
767
586
402
642
359
74
498
738
735
404
911
457
386
152
512
742
873
598
535
293
830
617
532
921
696
259
277
676
760
914
375
206
699
307
676
253
968
427
114
102
789
39
513
504
326
574
819
630
920
15
573
165
579
902
651
182
240
310
842
938
457
26
36
490
311
905
458
853
373
948
694
372
269
401
68
88
489
747
365
166
280
518
79
606
994
84
18
338
550
217
938
556
691
989
661
661
170
978
853
912
97
635
764
641
641
175
854
842
681
405
742
615
272
562
238
875
841
623
699
250
50
165
938
239
666
959
23
519
268
726
739
216
502
964
78
558
844
931
687
621
974
791
791
476
388
676
723
571
779
126
515
942
50
745
204
860
189
945
833
370
21
829
415
993
788
987
625
430
948
756
867
529
31
199
304
705
411
263
122
359
890
1
511
221
892
665
718
353
924
213
30
863
719
840
977
329
744
833
778
64
721
990
782
259
792
603
825
854
194
654
868
106
362
824
843
958
882
457
159
293
414
97
207
453
988
364
281
98
859
473
269
287
523
262
321
588
768
228
989
579
172
396
939
281
689
170
508
963
369
97
61
917
173
598
514
811
816
615
334
137
365
376
1000
820
640
800
908
614
52
932
189
297
752
21
891
424
2
118
450
59
907
750
213
83
626
250
634
632
309
575
705
836
798
904
105
269
397
195
384
861
847
850
878
873
813
967
351
943
234
398
290
840
440
673
35
991
382
655
208
13
321
652
714
360
849
907
712
312
332
146
451
73
349
415
803
202
991
490
432
794
829
214
352
971
535
577
774
82
286
840
731
230
586
110
933
762
782
501
799
678
348
12
855
825
114
663
149
609
876
829
295
845
804
904
373
762
550
463
925
654
792
795
695
429
391
848
285
408
662
434
963
29
377
152
217
48
411
614
848
356
657
39
786
983
941
273
28
653
153
246
27
61
295
461
584
30
835
516
309
496
341
869
180
221
648
695
651
687
937
838
143
660
902
523
325
698
295
995
664
973
503
27
691
633
898
266
295
322
875
46
891
821
709
600
169
129
317
811
248
644
840
115
211
24
740
596
248
218
963
915
895
761
831
770
833
997
740
687
249
121
591
927
277
468
861
393
147
508
24
593
238
329
281
299
284
116
528
586
730
981
593
510
905
570
860
445
491
676
425
466
162
843
199
385
219
67
328
936
428
919
888
439
255
898
414
944
492
978
116
639
301
617
681
269
13
386
325
204
867
490
430
209
84
691
230
59
97
961
892
251
618
388
141
984
769
173
90
521
329
981
286
149
43
774
104
449
166
882
629
714
380
553
322
644
801
753
361
710
38
462
320
942
181
577
299
512
948
105
576
223
372
144
36
62
854
931
15
627
825
535
539
772
95
768
908
288
950
720
526
36
447
909
424
951
716
480
507
562
577
16
155
984
906
360
914
678
755
297
583
315
934
812
544
529
452
912
392
888
914
448
64
274
959
654
86
788
945
457
828
868
225
79
667
752
948
578
704
498
400
573
202
700
434
216
52
277
964
403
84
335
357
998
797
159
36
362
693
426
2
985
619
297
680
885
808
496
202
769
186
32
802
918
989
598
252
526
647
409
825
288
843
280
940
140
63
135
622
432
624
226
792
712
80
860
655
53
839
229
706
89
128
395
601
157
270
515
717
149
899
352
209
628
983
397
643
751
834
604
255
340
975
453
224
857
592
548
506
472
6
347
639
112
96
599
723
458
786
742
67
640
696
999
843
86
25
141
35
291
242
925
986
695
303
811
291
212
159
686
434
148
723
457
977
751
113
928
322
689
811
206
148
103
576
228
242
359
160
527
796
899
964
819
114
490
217
623
919
915
178
272
812
674
947
565
596
139
59
825
69
376
315
804
86
486
679
53
456
866
761
268
432
317
194
937
398
240
194
588
237
473
928
516
387
893
792
274
150
827
302
732
931
103
652
176
341
66
48
509
998
898
867
747
533
62
130
449
575
527
525
82
159
289
515
110
884
9
20
47
733
861
494
473
62
942
442
366
420
600
601
706
314
359
959
243
868
830
213
991
456
127
329
57
126
324
251
485
796
508
815
737
901
966
119
799
43
493
548
638
208
599
334
784
822
868
273
307
22
496
904
948
530
655
982
739
310
197
728
50
474
981
814
900
344
542
977
610
170
642
769
79
574
749
352
899
816
255
887
55
451
149
161
820
858
83
565
270
667
189
530
261
283
913
966
9
477
181
913
938
608
843
88
290
957
197
415
753
828
513
77
630
434
538
600
253
937
301
20
643
769
256
397
462
338
682
539
709
182
187
352
598
281
616
102
729
901
762
258
675
982
194
233
487
179
174
103
407
222
26
575
424
170
465
434
809
86
538
17
478
685
580
764
785
82
661
510
388
89
809
905
383
429
340
132
617
888
347
6
542
192
927
536
849
81
684
762
396
412
544
715
850
914
98
261
626
96
518
21
249
470
889
275
140
257
681
117
701
845
673
475
1000
788
259
756
138
120
239
12
316
346
701
584
242
282
928
692
633
891
433
159
395
962
314
351
474
616
758
896
729
499
787
622
157
889
205
504
363
421
566
690
811
773
781
997
625
830
322
306
74
182
699
981
142
871
655
886
502
891
965
851
493
653
107
281
408
931
829
882
404
6
201
737
714
623
865
777
365
276
675
994
70
507
710
836
72
726
232
889
575
335
898
150
177
637
947
685
861
72
820
567
731
474
681
909
821
335
881
579
434
244
14
577
658
895
713
941
255
169
80
674
809
150
872
649
235
466
669
931
907
921
470
429
450
191
236
695
438
794
260
814
524
21
934
150
923
306
94
387
684
871
425
27
674
375
308
106
301
697
44
867
415
630
559
227
148
339
162
211
185
661
440
251
326
80
809
6
241
779
690
305
943
501
910
164
455
999
726
166
647
225
974
17
705
813
921
569
650
832
320
839
229
40
765
256
224
59
246
943
894
452
561
235
794
610
915
938
549
878
602
729
477
36
549
158
218
977
807
508
195
336
646
667
473
126
9
361
319
889
218
153
160
913
471
166
862
818
302
223
688
403
124
489
335
55
787
591
340
381
731
407
344
343
665
385
946
309
749
174
120
451
702
956
351
508
608
938
26
948
435
347
847
14
545
186
483
39
233
706
923
923
304
947
509
988
384
161
670
437
66
243
533
669
261
362
948
533
724
371
470
513
547
729
174
202
472
356
788
73
336
994
639
77
442
118
543
264
477
594
466
987
445
931
750
908
236
160
747
226
352
965
785
140
216
207
241
20
527
468
403
486
181
157
441
290
668
121
882
94
970
15
67
54
752
842
555
412
966
883
748
962
317
770
834
264
836
994
732
660
748
612
420
945
115
52
877
155
533
185
427
453
233
832
243
423
186
590
685
558
501
144
55
438
566
951
871
789
343
577
173
439
113
70
302
279
140
475
333
294
396
756
206
842
685
135
608
708
426
943
531
320
609
393
651
744
229
209
422
638
289
417
216
589
972
333
430
653
615
649
203
513
770
224
553
962
229
677
36
732
820
694
437
362
566
102
927
453
877
141
510
67
109
849
472
503
516
820
491
452
257
179
698
187
840
369
174
350
281
544
683
593
943
433
876
442
313
232
976
558
912
335
871
387
343
764
895
258
126
870
649
29
598
968
593
821
653
174
753
139
810
127
535
314
112
167
791
869
972
335
893
234
357
234
138
891
850
875
950
32
894
204
872
216
882
497
319
516
691
462
623
770
906
60
501
115
429
768
425
775
222
323
290
42
299
793
536
16
538
454
315
670
817
321
695
942
466
1
280
676
479
610
497
418
181
731
875
10
936
931
302
107
247
530
386
353
153
974
182
868
641
868
819
310
460
891
833
905
404
778
870
11
767
542
189
313
184
7
174
905
217
160
155
889
371
249
889
703
442
601
380
456
378
708
88
16
210
83
964
252
493
985
754
954
812
663
896
699
215
88
908
809
211
994
674
918
244
393
868
1000
412
763
624
328
15
122
799
49
540
952
502
545
55
485
150
255
311
251
478
55
953
36
954
123
650
81
208
115
470
57
102
60
560
966
479
413
785
328
425
186
729
19
65
578
296
991
925
727
612
302
388
66
641
425
156
180
821
517
681
662
283
180
201
18
72
663
514
781
631
568
432
409
700
20
568
862
768
398
434
182
991
740
890
562
423
45
956
183
562
997
150
810
173
302
185
883
361
424
547
443
82
210
876
544
965
105
386
693
76
931
135
85
748
424
628
470
906
729
516
221
882
697
104
826
293
912
540
601
40
36
456
471
870
849
680
88
385
929
996
762
902
757
474
665
853
332
542
662
126
838
685
539
365
580
969
152
53
2
937
657
88
108
597
688
571
261
818
448
365
235
181
777
312
349
102
868
744
242
583
482
48
151
543
525
251
625
984
565
54
32
308
307
114
545
834
292
457
943
90
834
892
681
474
951
4
360
554
870
737
581
394
793
543
590
36
333
486
716
971
748
677
910
673
454
55
481
453
705
741
955
976
759
209
205
422
364
491
19
216
851
936
333
175
594
563
966
608
782
844
337
32
187
583
305
378
311
526
84
535
908
364
675
932
728
844
391
213
429
164
863
603
887
673
162
812
305
471
452
439
502
457
276
105
398
541
840
491
689
325
15
841
58
977
168
507
882
713
68
426
321
720
964
275
223
773
116
351
810
794
714
511
970
977
511
840
74
185
106
792
250
805
37
73
755
810
428
89
528
230
739
727
509
96
947
622
181
700
501
132
168
907
241
698
424
927
140
119
653
23
760
115
351
814
247
738
983
14
237
55
550
33
936
319
342
41
702
316
976
892
337
818
585
848
804
954
396
144
963
509
305
5
271
330
581
856
409
382
902
152
478
788
236
465
72
587
68
80
926
498
45
653
711
328
909
569
983
810
646
498
178
868
693
765
453
272
13
718
946
480
106
605
419
21
19
764
864
387
962
555
634
846
857
561
463
280
748
770
146
494
462
787
766
554
218
789
183
192
753
828
368
310
518
583
537
992
519
119
842
815
228
378
59
995
274
700
361
79
203
231
516
712
405
71
931
456
970
250
864
227
439
868
598
82
630
927
236
278
743
329
398
718
359
11
37
764
113
552
347
837
151
633
723
557
934
594
240
134
170
175
829
336
411
267
713
483
80
757
574
983
51
344
166
173
191
609
163
77
187
630
821
572
130
487
648
266
110
752
441
594
98
195
424
895
591
723
353
611
967
775
956
162
921
151
912
350
814
229
52
992
375
425
568
996
654
466
132
19
186
467
289
619
447
723
910
128
418
438
124
84
868
757
25
203
327
61
674
684
349
124
879
338
84
589
855
272
118
464
231
556
963
13
571
102
106
911
792
64
464
761
885
198
425
718
742
751
189
8
731
87
639
644
745
209
631
500
727
673
820
861
857
965
320
28
484
768
982
625
787
746
701
87
753
778
992
283
864
746
813
703
916
82
856
591
905
649
831
276
630
389
10
451
381
320
681
468
80
294
521
603
754
347
673
396
318
552
1
37
753
540
380
584
12
520
299
643
356
106
792
416
826
908
690
352
720
531
944
335
257
746
648
955
343
890
394
359
963
80
86
698
460
752
364
333
534
867
452
932
243
601
702
654
528
749
825
397
436
917
356
282
639
763
136
819
957
852
684
104
570
916
728
990
836
469
49
431
357
301
167
213
676
760
485
157
881
128
85
806
619
492
668
935
626
174
454
930
560
402
522
694
278
52
119
563
938
383
919
795
343
241
304
301
955
139
963
847
899
843
123
186
414
158
854
495
363
595
508
490
93
277
759
280
218
633
534
208
414
325
348
112
737
838
710
110
958
569
372
100
141
34
838
515
775
529
866
457
936
59
609
801
897
323
771
513
543
166
346
412
970
37
583
858
979
922
636
365
639
9
740
298
297
833
428
345
611
297
641
307
536
856
973
889
985
402
448
758
192
558
224
890
611
850
960
70
793
564
696
491
427
26
240
59
743
428
438
450
476
64
885
872
252
530
506
587
544
3
686
632
9
246
309
876
179
880
252
832
369
746
519
931
211
951
968
119
125
289
389
868
958
373
202
986
206
10
84
574
853
325
139
586
650
573
166
826
615
21
1
396
131
854
465
229
203
779
846
982
474
119
446
75
898
317
609
301
30
513
794
192
197
184
739
27
897
843
831
986
331
250
631
570
718
104
992
932
441
538
326
616
492
975
876
575
196
673
766
124
541
624
930
57
867
300
936
936
215
198
423
158
263
71
615
515
118
674
389
896
204
128
833
637
594
990
20
592
164
554
364
833
879
688
307
118
193
857
19
50
763
366
976
45
535
667
848
813
261
707
452
772
171
796
847
733
47
140
943
84
868
773
521
71
891
248
710
633
713
998
501
137
697
549
953
289
113
652
740
80
217
968
998
545
154
971
55
229
729
182
426
947
723
223
531
219
941
393
750
46
688
588
367
452
256
196
265
749
354
444
712
243
893
400
735
288
102
279
469
279
67
226
744
438
259
368
209
854
616
776
139
438
602
557
815
940
988
99
210
937
513
962
288
657
190
112
852
756
991
346
342
62
474
137
135
58
130
199
238
28
121
316
362
264
225
581
153
920
828
850
616
672
8
947
216
179
537
34
271
633
598
5
23
947
615
627
346
899
396
232
146
318
880
753
592
777
741
272
307
436
817
488
48
397
75
323
539
734
111
912
615
203
907
51
243
915
934
549
326
589
321
299
849
148
532
676
448
74
928
76
904
17
482
239
892
772
777
765
272
880
52
146
492
774
438
228
222
330
342
815
316
514
525
66
762
931
174
887
951
368
817
111
717
725
962
352
164
503
981
775
35
609
257
81
404
714
41
80
904
247
314
640
517
298
313
414
431
535
719
869
193
389
143
216
882
845
616
575
687
744
10
761
288
32
831
595
328
952
734
443
348
674
734
983
622
330
83
869
6
136
611
90
446
377
719
97
668
414
214
958
195
589
621
84
122
62
73
53
511
792
791
857
498
202
802
427
195
773
745
650
181
961
309
2
992
238
675
544
868
269
838
12
27
356
179
108
909
653
745
649
469
587
349
956
908
344
491
209
288
919
644
830
892
802
128
422
357
433
639
346
390
225
241
102
76
36
436
251
501
710
384
120
244
919
901
407
95
987
42
206
787
617
997
98
53
57
453
426
991
861
507
818
72
468
26
694
185
191
594
554
397
701
589
522
134
103
779
712
881
157
995
718
815
616
949
341
21
274
577
275
947
363
947
853
416
952
684
687
797
503
675
339
214
685
659
880
65
457
141
9
365
232
314
56
809
377
389
423
1
161
364
953
95
982
204
704
682
18
991
385
628
567
852
856
423
700
937
577
864
546
397
463
712
501
321
745
709
574
690
830
456
146
646
279
822
376
573
782
77
889
801
123
475
431
79
821
531
502
504
655
652
357
234
824
596
408
419
86
694
969
488
98
905
888
791
904
868
88
254
771
715
340
923
970
547
177
241
885
85
589
577
899
21
936
18
412
312
237
390
60
901
73
128
762
999
877
569
347
763
56
760
466
703
961
269
425
50
52
59
502
633
474
126
635
585
570
322
118
825
322
853
391
288
981
734
763
54
300
750
697
579
528
7
19
655
349
989
87
351
369
144
510
906
136
871
203
485
280
203
299
480
493
794
632
188
692
393
829
96
587
832
214
820
96
744
364
2
372
643
556
460
600
347
681
702
622
815
974
734
750
483
914
877
173
520
616
606
660
239
204
213
505
444
403
443
9
88
222
936
602
942
239
497
965
994
93
204
462
974
525
376
978
314
59
789
32
115
490
28
371
326
108
695
48
661
467
242
358
398
615
690
277
507
177
574
902
773
852
995
922
382
891
129
731
954
850
920
60
85
920
635
659
554
258
496
323
435
940
362
656
309
903
363
465
60
699
182
419
971
190
294
988
877
844
742
813
636
599
989
575
576
400
135
550
973
885
349
860
540
262
42
583
602
950
387
82
758
659
464
472
376
146
586
772
862
407
764
232
790
611
897
381
993
585
333
653
775
568
281
115
508
892
168
94
67
397
928
68
960
706
339
477
51
558
651
829
829
51
293
270
659
4
53
928
73
485
246
589
814
960
674
148
714
148
108
642
541
58
317
957
479
516
857
415
866
795
490
756
487
611
883
501
770
865
277
360
723
658
524
815
457
4
618
631
510
778
187
833
966
692
121
328
894
420
922
662
394
715
211
825
809
55
977
865
289
121
497
300
705
698
71
955
235
710
547
390
425
354
442
331
624
918
572
974
800
983
257
739
51
844
387
741
885
296
359
953
532
973
961
986
149
814
742
188
672
233
839
249
997
11
9
590
404
5
151
335
988
824
783
58
766
845
14
677
899
120
452
745
831
470
723
301
754
278
625
627
24
609
972
35
345
672
554
101
693
427
726
713
966
703
812
315
280
772
30
89
554
554
407
447
737
919
394
829
926
654
418
271
954
52
107
975
429
458
190
841
650
106
452
311
931
519
870
90
179
434
988
816
20
985
300
203
322
954
398
86
218
729
801
860
756
487
876
903
41
6
733
974
614
6
387
967
325
641
151
945
757
487
818
264
96
537
401
100
364
518
386
763
17
78
564
105
694
530
852
137
244
109
513
863
882
107
698
960
779
684
112
734
107
48
540
169
544
272
450
76
872
426
227
682
759
121
78
445
893
852
485
727
977
680
298
843
234
676
286
343
545
41
567
30
784
7
442
936
881
964
241
951
721
225
385
174
994
168
369
953
282
436
132
513
143
429
577
997
494
303
14
738
920
773
955
197
563
633
898
515
520
576
810
908
303
677
710
462
162
915
323
476
761
39
723
38
121
200
917
182
544
734
541
429
593
316
590
475
374
98
284
558
930
897
14
323
567
227
976
504
216
64
605
159
732
337
682
709
7
731
926
650
819
338
844
196
946
964
688
353
334
827
853
293
840
435
153
587
246
310
297
734
732
570
611
178
481
435
952
350
461
631
967
980
626
841
601
382
342
147
955
652
50
906
995
571
200
184
378
192
800
984
137
782
43
581
792
980
86
166
379
846
937
56
766
266
955
811
669
21
576
872
953
995
496
35
710
605
851
109
864
664
998
400
755
359
905
791
766
727
287
160
362
753
512
613
912
17
669
572
543
289
980
860
858
144
710
807
507
542
500
984
436
14
911
987
834
975
394
618
958
886
230
785
367
182
447
525
353
578
827
22
995
925
779
169
468
723
481
272
622
684
102
979
659
978
955
964
587
835
541
556
86
518
888
643
22
999
24
780
171
448
355
360
815
163
323
184
588
20
789
750
734
981
787
257
326
946
159
749
946
339
691
565
438
181
752
181
556
234
461
864
705
329
181
161
936
286
570
594
269
80
246
288
89
286
216
887
67
187
520
592
852
71
751
822
886
333
928
85
973
367
172
243
221
829
483
865
258
674
892
821
860
305
805
16
366
703
760
336
465
693
548
684
406
238
491
157
649
287
180
216
625
822
296
214
503
495
198
493
882
796
12
500
940
416
260
455
142
610
846
30
841
483
78
977
480
146
469
249
45
520
5
199
125
906
337
242
81
544
145
824
8
809
835
229
139
755
63
868
39
216
846
885
431
569
183
977
457
820
452
424
856
556
867
196
611
102
882
866
824
360
680
833
399
512
626
223
416
134
990
722
999
334
300
508
818
75
310
645
606
395
200
577
857
121
347
590
451
777
121
613
881
773
869
253
144
62
615
363
208
133
676
392
843
559
586
262
975
310
485
131
230
118
629
206
765
515
470
606
953
89
284
654
67
401
772
373
387
974
494
32
659
725
946
553
738
957
413
666
143
501
979
801
749
809
289
920
364
890
766
40
207
710
129
718
874
581
892
314
743
690
71
862
65
706
682
872
210
956
358
137
458
303
287
504
446
944
540
856
826
695
793
216
127
76
20
470
720
557
360
514
718
803
57
460
433
647
965
260
1000
920
696
746
999
31
534
533
601
308
210
476
895
724
43
460
102
317
32
732
800
645
496
647
269
367
781
390
774
754
515
589
656
326
22
641
977
993
668
973
455
612
513
469
763
841
672
388
336
676
535
418
287
151
137
516
179
444
521
134
384
935
402
618
58
520
759
768
307
517
117
548
405
50
101
995
516
879
263
779
639
715
142
350
734
251
222
719
994
487
501
918
727
428
949
740
784
26
494
80
819
490
410
324
595
107
892
388
698
713
389
530
548
923
312
798
176
618
339
923
162
921
273
427
344
11
595
466
134
897
314
552
245
497
4
340
843
759
433
387
570
959
21
626
689
775
849
198
6
743
539
998
644
538
431
833
596
517
452
529
259
582
294
414
599
728
227
87
740
983
400
909
536
636
782
677
211
545
326
139
644
144
696
545
273
133
234
395
381
586
524
864
355
694
924
267
505
715
903
954
480
461
241
560
304
450
420
102
483
606
568
994
9
644
278
990
252
127
4
457
276
451
74
662
381
278
594
267
177
566
946
115
312
996
432
623
373
249
773
59
145
396
678
635
531
262
958
772
938
943
749
146
984
389
935
644
59
211
383
515
219
224
456
346
499
760
393
706
253
546
668
436
697
623
435
771
564
746
95
120
748
449
455
93
370
720
762
839
728
970
916
146
11
869
216
582
607
354
965
810
380
133
273
432
550
382
45
628
610
660
728
612
86
707
39
937
195
20
277
965
553
947
696
68
806
575
792
619
441
785
25
603
865
182
900
116
655
295
64
613
631
384
566
847
287
967
789
691
547
131
643
724
190
49
109
605
588
79
260
297
846
524
893
746
584
518
300
764
689
761
178
558
586
343
925
272
945
873
765
783
605
715
214
452
463
99
818
386
856
105
772
729
764
536
711
577
774
433
30
668
931
436
973
968
62
352
462
23
654
45
467
155
421
351
427
762
632
721
691
428
963
458
212
837
168
523
153
314
730
475
492
445
259
624
767
84
770
730
860
75
134
824
538
915
401
235
765
626
95
841
292
513
63
622
681
332
149
618
518
326
864
835
270
334
774
638
987
931
586
288
698
943
521
836
850
193
646
139
136
210
231
349
80
199
332
10
792
908
372
728
205
326
200
107
467
149
848
88
761
666
277
414
152
932
798
646
305
496
792
748
704
483
26
611
766
481
624
49
84
839
808
953
837
834
382
632
706
311
921
436
350
64
861
296
779
315
371
354
461
959
275
769
968
929
827
504
478
608
260
436
169
917
785
139
620
731
518
927
144
581
555
72
80
718
149
233
864
230
571
100
879
444
891
948
176
458
391
65
116
661
813
478
458
729
918
459
417
508
135
520
396
441
445
354
918
676
501
867
482
711
181
718
741
847
525
751
43
577
603
562
204
614
675
610
39
400
139
891
740
83
466
767
290
643
642
453
585
748
635
884
839
532
722
538
961
869
598
426
557
616
64
431
190
389
424
143
24
901
968
380
986
219
689
788
274
898
700
782
804
392
911
365
321
277
475
886
392
926
584
697
73
665
628
249
788
69
460
67
815
215
848
522
654
83
639
154
136
27
16
374
822
242
935
59
681
395
162
147
221
373
176
968
719
154
106
113
742
631
782
591
257
290
674
22
609
988
46
206
559
78
774
837
713
774
412
822
35
197
823
612
522
344
288
275
282
216
841
871
288
863
493
335
936
48
578
193
519
311
178
718
444
168
963
45
57
404
280
988
170
15
681
270
803
323
217
601
178
942
603
552
262
586
226
234
174
933
183
553
396
885
999
503
604
709
696
627
86
684
29
217
214
887
2
918
599
890
401
891
159
750
199
551
712
625
41
789
880
264
573
857
264
539
568
548
385
952
408
957
681
138
69
927
704
28
899
946
765
4
776
795
971
30
712
995
203
798
684
784
840
535
799
320
324
921
381
21
804
571
180
13
438
171
986
196
322
528
899
998
135
198
19
416
626
327
128
594
221
715
713
583
401
239
69
709
260
948
762
502
317
630
461
639
140
100
487
920
862
849
472
232
677
773
115
700
808
128
728
6
829
159
184
348
421
498
309
77
59
319
962
279
967
593
511
63
640
163
464
195
685
291
549
347
359
543
990
774
264
47
287
393
372
840
995
254
925
563
820
425
961
774
59
500
120
681
238
889
988
926
152
888
791
10
807
164
733
938
173
366
600
582
577
759
808
45
933
323
302
860
38
804
78
988
496
110
25
748
818
569
709
935
884
987
869
790
307
151
113
318
880
865
210
78
36
611
538
158
974
293
731
416
865
776
457
742
550
242
764
469
981
93
783
92
792
716
374
391
597
322
535
256
810
815
488
819
364
82
294
36
915
923
823
916
272
181
517
688
749
699
454
533
256
856
883
426
875
351
213
92
30
936
59
985
480
544
660
250
769
184
569
194
768
584
651
713
813
545
765
113
930
912
415
530
29
960
869
687
778
734
173
515
29
651
949
423
325
900
140
249
514
368
100
16
690
97
928
805
790
239
711
535
986
415
118
787
356
609
967
698
371
912
459
198
612
85
729
662
150
456
483
920
948
158
542
678
79
369
524
39
461
715
762
485
13
883
27
352
914
486
267
492
649
477
301
133
767
2
49
761
794
622
740
448
990
597
792
845
767
621
131
369
345
452
313
388
782
33
604
502
137
523
867
889
360
294
565
928
699
206
903
56
410
667
461
371
649
324
766
207
546
446
363
736
843
184
161
965
666
901
206
657
335
1
441
454
234
833
726
713
159
729
954
468
776
990
199
93
158
653
128
204
551
176
655
407
199
196
568
88
433
44
417
573
368
489
248
349
558
802
416
536
741
109
911
141
473
907
230
703
306
455
705
550
391
28
937
26
928
450
952
416
833
100
1
498
759
439
721
864
173
927
775
765
105
100
462
152
496
106
155
971
172
759
610
860
171
515
821
6
89
680
547
425
148
700
590
311
271
326
896
223
743
155
623
72
205
532
165
846
147
72
683
185
438
152
490
287
404
584
830
594
95
819
608
971
564
778
115
893
872
521
567
288
474
730
504
798
68
765
379
820
174
851
622
510
279
845
583
873
516
780
926
420
403
338
223
761
587
230
829
670
772
680
15
952
704
477
82
423
133
370
898
849
651
627
361
218
38
626
362
181
487
805
72
974
817
679
774
629
208
692
629
627
657
658
759
968
900
678
99
225
947
620
940
902
426
555
829
739
817
773
111
969
389
457
61
866
794
677
563
219
641
657
870
904
234
576
437
560
55
688
619
609
100
138
373
974
850
659
175
332
351
519
194
378
870
56
291
681
462
472
657
146
141
967
680
54
952
200
838
589
994
305
937
363
282
138
689
626
135
249
210
191
916
837
276
468
113
521
551
760
260
678
225
109
832
805
500
481
973
704
552
660
942
350
264
782
337
311
183
429
752
976
893
454
331
359
277
267
582
498
300
394
397
827
453
338
733
337
567
8
938
124
846
422
162
368
314
64
926
558
950
695
937
797
985
700
564
570
457
260
500
427
613
198
270
381
922
255
853
154
385
447
682
334
504
639
665
535
798
121
934
761
728
237
439
259
183
739
599
434
498
20
857
213
31
65
905
954
861
966
969
205
255
456
156
602
698
601
893
169
948
146
359
529
301
740
716
190
1
105
275
51
484
178
929
167
504
285
752
179
919
583
743
629
659
645
618
197
796
101
966
157
607
56
721
677
830
466
884
293
156
395
906
361
648
71
246
343
916
869
154
487
695
865
259
112
320
706
395
50
194
201
608
98
641
706
518
588
173
387
720
131
435
149
158
676
878
280
2
455
629
303
178
284
159
38
179
70
172
363
92
542
37
400
889
964
647
287
641
7
323
930
419
374
299
730
752
364
803
892
251
909
665
403
757
86
253
902
909
838
639
793
195
859
441
131
625
989
500
185
661
43
26
779
407
992
364
928
229
462
573
15
213
436
55
439
875
486
271
997
422
353
128
126
62
260
942
256
621
586
881
834
328
773
696
927
205
473
692
94
693
69
442
665
944
192
673
752
827
423
974
310
648
674
411
406
486
488
68
176
178
48
41
397
442
592
250
38
459
896
485
238
4
470
196
856
763
694
177
154
103
351
411
309
755
670
245
325
669
87
737
414
91
491
491
242
660
547
751
171
320
990
260
355
811
15
864
888
72
805
544
417
264
156
86
936
373
574
353
980
583
382
187
109
771
389
221
994
493
535
535
162
734
219
981
812
940
590
205
15
927
288
132
85
862
503
998
169
954
254
635
364
191
455
772
396
859
223
464
410
464
400
145
551
826
637
598
623
522
788
314
399
385
689
552
476
852
147
836
432
29
918
49
817
871
997
414
520
571
885
631
113
279
841
785
675
641
335
718
221
286
616
218
852
391
120
273
294
38
416
901
684
708
571
502
1
457
274
40
932
76
240
596
673
684
580
788
557
554
947
821
84
777
606
798
891
207
717
804
890
159
259
269
173
479
874
879
966
618
84
184
18
736
708
884
992
153
425
580
644
152
397
704
748
891
179
112
450
173
816
751
305
754
174
503
600
28
584
957
283
294
24
777
237
207
248
771
575
763
797
467
306
605
927
630
731
685
415
177
805
156
666
256
792
320
506
290
154
85
217
646
51
680
216
502
117
462
635
674
838
186
20
647
549
298
900
406
917
920
735
283
471
963
543
983
268
20
109
491
381
963
958
128
472
397
166
731
182
474
607
467
833
701
793
710
650
263
968
23
312
169
380
930
842
140
68
124
434
571
363
249
859
987
618
309
546
22
882
467
445
927
504
690
108
585
546
406
61
78
969
634
236
730
909
137
74
224
63
53
710
234
654
903
198
17
419
297
177
371
455
733
560
2
665
344
815
72
184
699
64
484
289
817
155
127
849
66
572
150
741
993
859
843
431
907
31
845
23
719
145
513
858
544
646
853
839
588
749
275
528
947
25
953
116
774
644
493
403
574
376
478
188
473
966
3
941
987
178
874
357
901
170
472
107
620
490
559
443
174
390
905
826
738
725
639
719
140
992
59
911
961
85
843
960
67
988
583
649
529
205
298
910
448
275
85
254
911
367
385
700
384
33
98
647
509
9
251
736
549
913
21
575
992
655
116
139
118
188
59
495
484
484
264
106
577
732
916
71
490
868
287
753
606
161
58
605
47
298
351
996
615
64
514
447
547
448
780
747
161
694
541
153
360
501
532
205
856
539
404
430
180
386
959
669
353
308
656
194
146
210
685
496
998
71
588
249
95
3
692
950
57
82
894
144
823
270
714
827
238
494
410
751
270
105
937
505
32
74
188
497
994
319
438
360
154
478
263
673
32
40
130
117
219
186
929
530
51
857
33
681
834
454
872
104
227
835
528
691
576
537
778
32
1000
298
320
131
355
938
587
526
49
468
781
204
262
805
473
329
531
127
639
122
727
532
5
358
498
166
471
68
160
435
241
822
771
13
511
713
814
284
331
833
346
985
67
840
495
193
702
389
568
248
885
353
773
167
455
611
874
463
28
247
759
658
73
25
388
974
812
813
11
184
202
870
554
889
16
607
656
710
778
651
348
861
495
116
670
58
604
794
624
747
103
800
24
308
629
90
279
31
471
924
760
456
829
335
580
513
929
146
323
124
21
779
561
42
233
916
555
198
305
258
789
760
196
755
237
13
85
231
827
878
722
828
55
814
410
361
592
101
441
509
808
424
416
548
914
455
327
900
862
805
527
640
937
360
296
227
598
855
450
115
212
605
645
829
390
78
117
680
359
634
178
852
221
836
922
261
848
99
907
924
985
736
505
272
174
18
172
490
601
929
87
387
535
62
591
897
471
784
346
607
357
127
160
78
915
508
498
729
272
49
415
896
534
699
873
5
732
585
943
657
319
368
515
533
779
485
525
954
437
133
524
719
484
54
960
950
664
255
799
58
94
636
647
364
464
566
379
230
288
415
405
127
355
354
884
445
93
538
288
648
420
702
755
179
363
436
217
638
287
567
766
715
18
230
889
337
185
676
779
698
112
36
538
4
635
364
123
247
833
176
694
199
128
561
371
723
407
679
481
686
320
214
496
139
907
379
643
767
424
740
319
465
834
892
54
377
718
49
800
161
121
667
722
648
450
953
259
204
627
663
180
524
859
125
764
351
348
438
410
499
509
514
114
272
592
848
260
9
131
748
889
456
367
135
698
874
370
36
932
521
801
249
541
739
112
532
641
451
630
497
355
161
240
445
586
849
207
213
944
879
235
536
823
769
160
917
886
39
17
475
824
132
867
788
883
650
445
227
714
41
545
930
714
961
911
164
812
802
476
904
505
1
754
984
120
598
593
420
570
735
256
435
253
46
610
292
236
964
761
235
825
412
886
809
913
206
134
546
534
676
986
450
954
274
398
352
571
463
389
576
949
390
399
174
805
228
133
652
399
551
324
256
742
802
278
266
971
668
758
461
546
168
364
530
411
91
702
249
90
432
94
450
975
579
610
737
515
496
580
228
541
574
9
855
153
848
820
308
96
914
938
26
622
715
335
594
853
221
165
169
40
202
553
161
588
613
493
245
960
197
753
197
895
292
279
62
719
854
484
328
427
327
656
337
222
225
908
459
447
905
427
564
137
189
567
893
73
685
927
360
973
300
967
594
22
205
224
647
497
459
78
489
414
687
366
727
905
982
753
715
581
153
880
837
909
104
476
361
941
225
203
787
21
822
650
132
363
463
323
85
109
764
802
331
253
31
450
182
301
700
80
115
602
196
798
299
668
393
12
464
148
862
788
842
794
892
891
352
99
91
613
947
374
614
204
867
411
678
291
176
297
554
12
731
272
162
253
452
354
439
809
905
445
594
326
958
962
390
702
747
665
873
127
334
329
145
113
975
286
114
946
349
384
645
878
454
307
321
207
450
332
424
784
444
336
916
757
55
754
818
974
525
625
47
324
464
923
466
666
990
405
208
353
136
926
598
325
596
634
826
579
43
136
99
46
186
806
80
403
187
672
341
782
858
499
664
927
231
770
327
97
4
451
938
28
518
453
207
418
450
423
407
431
146
393
674
244
542
292
579
351
106
283
440
181
230
958
950
189
26
484
285
784
863
749
860
972
29
284
378
915
133
215
636
19
362
859
866
662
491
228
784
369
855
744
463
349
592
740
170
615
775
794
777
713
24
824
695
553
422
532
272
59
725
343
661
574
551
471
26
65
230
383
467
422
673
549
102
312
499
710
435
677
266
500
92
11
490
998
327
752
928
21
491
985
776
644
285
994
720
753
247
742
96
795
948
933
185
241
918
213
913
859
49
195
148
742
762
921
31
924
176
547
299
863
421
683
375
359
687
812
142
304
16
401
855
394
846
499
193
827
537
46
623
234
407
130
410
375
821
833
605
742
472
652
612
524
263
723
662
905
707
11
670
950
841
817
578
996
208
304
46
400
832
301
896
692
769
109
560
424
16
21
28
299
755
296
294
145
232
180
75
377
766
956
35
723
971
923
844
306
531
620
210
723
459
555
25
789
481
90
716
575
96
754
121
492
539
78
825
318
148
313
3
412
875
750
762
801
156
731
259
248
746
889
234
808
977
212
226
933
285
180
392
827
351
405
607
376
94
611
778
579
887
362
841
643
2
705
252
793
30
815
820
254
685
346
137
55
76
767
309
263
249
930
642
991
863
629
119
771
377
796
711
182
9
715
549
693
27
840
182
47
764
532
470
317
224
338
347
908
127
59
964
815
379
60
215
749
834
184
472
456
5
725
417
671
512
762
36
349
435
717
849
38
859
57
411
950
206
232
509
790
392
334
2
861
499
616
413
629
444
169
408
8
136
330
599
976
449
464
150
668
557
245
881
7
604
398
896
233
297
559
829
171
919
211
894
997
690
733
550
649
854
657
970
475
104
129
549
681
189
431
864
962
74
156
511
729
21
461
162
189
730
140
805
123
165
30
636
846
875
641
665
348
570
213
491
681
656
742
848
271
980
226
264
181
459
216
485
27
668
391
918
498
534
90
690
280
674
955
999
897
61
630
412
831
44
874
584
260
766
447
758
493
900
196
333
184
239
357
365
769
658
97
246
106
728
463
31
356
270
306
228
689
629
761
836
285
396
423
667
852
323
956
279
32
993
797
521
546
176
44
188
9
754
785
651
468
506
359
866
710
786
502
808
362
199
357
925
625
919
214
509
554
416
238
547
91
482
373
93
130
826
108
699
146
395
357
225
97
684
722
729
778
313
117
655
227
570
454
390
977
708
170
278
272
829
516
6
543
738
281
558
599
372
726
88
827
853
755
603
331
586
906
898
559
924
940
761
846
47
439
79
305
959
772
882
559
766
831
919
796
894
846
961
272
420
254
94
495
229
715
283
889
603
277
323
694
270
297
803
426
847
90
23
963
496
175
577
576
272
70
469
363
672
749
287
47
778
916
100
313
839
512
923
619
624
932
740
102
732
194
502
897
755
220
875
494
35
909
958
83
435
97
915
541
90
766
577
77
297
424
753
344
847
685
110
922
797
322
608
165
219
752
506
859
794
411
511
689
957
851
138
993
171
84
939
743
342
642
365
655
201
615
888
924
553
946
356
987
15
917
963
769
797
436
315
16
54
928
245
303
882
802
7
228
288
555
76
682
527
772
524
162
687
279
781
512
504
783
672
195
909
542
532
496
659
872
225
271
754
44
898
205
1
755
28
347
849
537
247
875
167
37
136
145
486
493
607
549
548
919
717
284
326
681
330
152
311
179
659
366
426
885
561
328
520
262
601
214
11
206
516
130
834
552
320
560
747
699
291
682
161
575
495
297
862
407
785
824
329
708
925
324
147
672
869
863
861
710
628
318
897
746
891
381
338
577
26
622
679
894
93
369
303
263
11
675
129
342
300
915
643
959
645
448
425
620
446
675
544
865
365
429
492
855
222
779
873
250
26
510
222
277
424
639
214
548
864
142
487
470
597
996
901
909
423
821
231
777
480
816
89
340
334
195
267
980
43
448
420
220
845
373
59
786
423
673
163
518
88
27
53
34
873
371
121
506
53
339
554
54
380
10
821
247
150
305
880
517
786
871
783
72
450
990
907
427
21
931
243
273
81
333
700
335
480
427
286
517
33
571
884
451
982
106
194
374
335
228
520
264
716
978
824
576
33
764
55
947
727
385
47
709
75
540
41
628
793
20
665
463
52
815
299
544
434
852
516
485
9
115
17
159
824
194
582
576
745
195
260
560
276
931
470
21
59
557
696
100
59
855
454
122
803
491
802
538
280
548
185
320
439
170
791
143
993
65
111
660
734
214
218
925
489
997
446
200
279
304
366
885
674
224
437
625
343
712
848
381
568
85
349
72
564
232
552
720
130
720
184
601
757
845
413
656
824
238
990
216
27
319
978
578
23
523
139
930
106
248
711
719
720
747
321
44
997
247
952
496
402
700
57
865
410
420
671
560
366
811
276
980
646
934
802
172
86
689
350
886
96
155
420
953
648
219
224
687
972
670
123
516
143
38
592
875
464
304
105
887
885
490
110
669
717
148
212
850
985
14
892
762
274
642
916
675
942
884
473
953
991
3
220
877
564
570
580
585
801
523
701
501
883
344
123
445
564
679
782
860
449
779
215
194
654
451
118
431
729
997
612
65
889
895
474
941
135
222
466
766
173
157
38
137
461
726
462
616
876
911
23
750
598
995
489
960
978
912
749
808
386
654
66
696
770
195
702
580
646
379
922
167
430
378
569
284
883
612
502
791
231
1000
672
979
817
885
57
137
724
878
84
761
784
773
949
287
768
26
158
194
229
540
626
209
489
353
865
943
364
507
405
769
995
429
41
972
468
448
792
861
309
259
783
409
243
27
436
489
466
928
755
323
104
615
817
884
29
865
247
278
300
511
416
345
38
966
892
704
50
310
250
690
28
710
822
231
302
422
782
233
377
39
612
711
865
157
865
602
450
167
404
264
691
847
844
324
923
647
884
912
947
558
91
655
773
86
194
169
582
494
247
355
368
986
632
961
120
557
638
670
700
276
19
263
495
308
132
153
631
60
601
239
75
985
738
332
545
432
3
177
178
288
274
433
113
477
537
819
878
859
641
283
410
643
30
887
976
390
490
638
643
8
801
47
481
156
73
413
432
797
564
973
1000
385
487
132
253
613
802
995
719
862
727
115
23
479
544
352
788
417
500
642
351
280
211
901
528
583
584
387
464
131
454
728
80
433
904
54
878
971
363
133
178
656
536
548
485
732
127
124
275
343
636
197
422
303
672
847
181
699
705
506
606
648
660
407
675
899
876
373
662
246
1000
726
379
849
459
359
66
790
283
224
494
810
9
34
689
357
906
138
241
735
517
976
441
754
32
549
414
416
989
372
725
819
631
991
477
195
745
984
956
989
858
616
759
254
653
512
985
367
980
837
656
524
651
91
316
588
684
345
570
655
868
792
338
247
583
197
890
658
801
660
9
26
168
399
937
685
634
204
177
132
97
831
345
904
309
229
160
782
77
462
371
965
659
513
838
206
500
346
791
300
695
674
223
206
828
437
680
442
700
693
440
119
914
303
406
803
958
700
40
465
537
830
170
126
374
617
650
589
622
359
113
629
738
831
46
32
636
104
88
435
926
433
786
282
294
227
250
162
605
640
820
377
947
830
59
934
973
165
121
585
653
217
737
258
290
858
112
835
856
628
464
403
256
476
687
69
129
163
709
524
736
294
789
646
300
87
632
640
158
288
443
586
799
687
812
359
555
773
911
394
668
791
895
282
929
401
140
838
602
403
506
167
787
157
428
707
936
761
174
531
107
246
757
904
91
721
142
359
410
419
703
627
158
37
688
810
179
838
313
11
881
492
810
519
689
954
939
939
324
496
271
660
875
702
566
577
311
398
565
171
659
50
495
126
362
516
834
775
191
201
61
560
361
252
148
267
994
265
536
793
980
427
859
610
592
450
305
350
547
401
935
395
50
109
173
64
912
634
823
684
113
92
893
894
717
702
183
766
12
397
942
958
456
179
389
192
494
174
81
258
577
316
49
915
723
610
500
419
614
598
314
162
389
433
317
502
180
630
536
464
56
288
203
238
214
352
211
351
114
336
378
289
575
651
147
387
337
679
467
119
438
71
724
556
959
382
204
316
277
608
211
873
924
447
748
732
905
621
558
452
490
690
440
242
656
666
295
100
367
419
942
834
22
80
816
907
231
265
533
720
437
679
791
905
312
812
729
814
458
460
980
322
126
528
365
237
205
377
364
856
712
962
167
486
28
874
946
667
454
624
111
595
124
926
971
586
123
460
899
628
640
496
520
368
821
525
623
9
890
71
660
526
31
552
212
600
498
600
61
253
639
449
387
128
505
523
469
714
835
799
361
258
697
920
224
402
983
638
868
685
993
474
21
531
985
422
199
235
790
266
977
543
389
52
409
373
943
715
627
449
909
773
146
639
459
873
125
880
614
327
439
819
982
301
189
207
473
511
160
676
420
251
800
676
737
483
881
583
98
916
678
186
745
540
834
678
537
192
554
366
801
506
474
718
427
622
420
469
816
638
62
780
581
832
659
978
928
961
810
768
11
295
606
921
378
503
485
627
895
413
595
384
211
890
460
679
957
710
556
416
932
883
185
682
687
686
233
43
724
659
419
216
994
352
876
787
651
952
638
208
128
687
224
656
8
136
152
863
516
951
166
200
489
639
419
53
674
41
553
517
675
924
535
656
7
214
951
528
926
382
966
784
472
426
860
551
429
213
135
733
294
788
531
604
542
600
802
503
996
587
288
560
409
403
930
324
458
850
894
187
472
802
456
849
999
607
642
664
112
708
496
13
437
15
504
258
556
539
11
200
635
36
900
831
529
913
554
834
49
641
262
849
534
394
781
897
374
165
102
57
16
63
790
140
974
914
129
200
862
578
237
31
831
17
706
353
485
582
1
78
620
631
602
407
318
603
220
257
732
123
447
982
456
561
927
731
874
633
172
215
73
64
132
924
45
650
458
605
539
848
335
579
979
351
855
40
648
27
308
380
572
223
303
955
786
879
178
438
519
753
860
902
422
296
763
757
299
393
713
398
764
512
173
505
704
785
491
560
284
86
302
894
400
496
395
589
609
119
544
99
445
332
608
296
33
754
837
787
862
273
884
347
540
289
517
952
624
589
251
786
725
941
387
739
893
235
760
980
897
571
691
540
863
354
775
427
542
496
599
485
547
669
135
791
5
851
477
543
959
200
610
766
689
389
714
600
313
62
168
511
151
860
415
430
240
820
684
615
399
645
981
311
992
541
659
497
609
970
403
475
320
235
955
310
456
285
741
745
503
773
519
342
794
753
323
939
352
524
541
928
941
412
638
471
665
268
259
198
769
857
140
656
205
130
70
507
802
681
22
263
581
868
39
876
867
931
171
409
111
277
540
705
592
937
869
140
331
347
949
855
713
440
646
575
54
481
61
406
91
361
142
181
803
534
842
301
718
346
703
239
809
20
690
645
343
303
781
880
468
36
557
124
446
392
965
881
161
533
254
470
215
44
701
613
864
370
668
464
196
812
538
965
633
199
875
18
880
733
810
878
530
1
573
368
258
561
845
364
629
268
305
542
894
551
408
846
291
220
420
67
942
622
571
15
703
728
34
145
564
889
983
426
974
989
403
814
787
399
423
309
549
251
506
647
790
157
885
154
646
689
535
185
474
905
567
713
896
258
516
987
258
877
231
146
10
830
829
610
380
773
240
619
389
21
406
167
921
39
858
801
187
485
686
17
853
896
459
714
246
195
861
339
182
902
19
192
866
606
593
134
321
610
182
630
106
301
461
472
567
433
156
793
843
752
66
230
785
670
48
215
515
953
478
686
741
934
562
240
123
366
424
414
590
371
229
818
338
779
532
302
303
679
95
863
459
979
676
740
637
159
313
788
996
710
573
170
157
973
610
24
9
70
756
333
441
972
323
526
422
79
895
595
77
283
585
832
152
782
655
281
291
26
365
491
189
282
442
35
237
630
227
741
497
193
304
820
928
813
138
741
722
258
433
636
822
50
73
56
85
922
571
437
368
936
639
45
49
304
182
393
50
415
402
614
256
838
967
751
60
452
198
707
450
876
974
667
185
184
776
128
680
865
950
472
22
193
687
894
199
893
531
122
651
124
596
597
689
313
602
584
840
29
97
483
590
696
728
768
326
101
734
478
961
22
445
973
225
794
937
935
767
43
866
725
582
179
874
419
908
741
780
673
317
271
702
29
280
158
998
909
455
23
25
123
320
961
515
639
916
234
822
56
520
344
589
619
781
385
266
414
812
467
216
802
567
751
287
4
342
108
971
809
133
759
113
1000
203
337
675
411
326
923
345
870
628
481
149
172
209
651
566
453
679
26
240
233
27
459
810
881
427
529
595
194
312
730
226
130
109
343
514
772
379
893
571
586
673
409
347
488
554
939
354
683
610
200
950
296
423
752
413
810
884
473
768
346
492
55
751
115
786
419
935
942
306
516
439
891
151
722
242
862
339
219
76
931
953
32
375
602
547
430
490
686
942
92
93
209
286
39
231
218
153
659
276
632
208
109
383
885
169
856
704
677
897
820
97
587
514
802
852
595
107
681
407
845
833
937
757
631
712
733
844
794
85
742
928
498
277
84
373
556
971
72
257
61
79
287
371
600
919
259
27
839
45
511
787
588
548
946
926
277
965
315
637
881
777
184
768
422
45
801
555
644
485
273
993
44
716
188
887
426
638
862
64
495
759
462
385
557
659
844
736
756
967
903
237
202
304
653
893
171
91
147
388
416
766
37
996
693
103
89
648
716
539
432
570
672
503
269
339
10
983
294
825
5
965
789
834
637
293
43
868
644
658
195
406
258
709
791
792
350
338
847
755
338
791
289
217
656
151
377
875
274
117
962
980
793
113
198
148
26
164
334
791
594
543
538
616
111
698
665
504
530
523
10
182
816
175
517
476
546
844
998
826
901
801
498
742
948
957
751
166
772
928
147
277
93
523
47
929
475
182
80
983
919
434
660
538
911
892
901
938
453
527
328
527
177
848
698
538
475
694
920
913
286
470
649
254
280
536
565
412
629
642
24
820
515
831
103
137
202
708
331
742
931
96
806
258
903
293
897
944
660
585
294
21
614
852
327
799
888
300
487
414
778
560
342
782
832
24
674
728
811
624
717
749
734
673
876
824
713
454
425
841
176
252
455
626
255
987
219
862
274
786
770
836
239
881
414
508
889
30
291
967
432
184
94
531
510
469
213
64
538
368
800
893
741
639
270
582
498
989
751
604
925
139
150
400
774
164
40
736
366
634
377
675
188
759
415
126
177
950
22
77
823
920
348
795
934
521
838
280
84
764
91
651
754
626
920
785
500
258
629
138
413
724
125
952
761
481
196
140
431
638
454
882
696
987
526
560
16
355
112
196
719
642
484
712
405
86
652
905
862
648
289
540
610
777
931
559
826
52
391
773
61
512
763
235
108
431
900
962
722
811
301
645
373
934
388
109
300
980
638
913
284
699
10
180
641
440
399
572
589
207
926
762
377
357
122
21
519
34
885
806
719
897
558
37
577
505
520
53
718
878
937
454
432
973
671
176
862
348
283
287
330
901
97
816
52
439
627
935
973
67
908
606
336
74
648
25
174
51
423
442
601
774
566
186
61
537
514
773
161
646
336
121
478
629
267
837
465
955
58
373
995
169
32
405
481
648
933
996
736
443
281
83
689
212
180
424
378
237
687
969
79
81
448
382
368
882
160
939
412
193
753
238
705
268
333
643
345
720
989
987
987
683
833
235
539
232
568
945
708
590
22
609
743
861
703
771
646
727
487
890
570
874
551
99
792
653
944
128
383
911
511
298
971
945
684
911
412
694
79
422
870
359
740
507
388
688
814
343
542
960
348
169
262
723
101
764
649
652
582
610
338
473
506
205
535
218
51
333
9
810
58
571
729
621
430
511
252
134
157
815
704
896
250
158
412
656
942
858
266
138
904
770
37
712
955
714
891
877
525
27
38
232
229
967
866
39
265
183
997
835
291
632
497
466
682
138
994
905
417
107
724
279
849
26
771
416
898
723
848
895
901
354
211
973
51
254
49
450
324
116
7
914
928
411
136
887
242
939
290
109
487
964
232
667
636
324
184
673
26
817
850
477
715
257
426
569
223
935
742
271
264
570
131
701
28
461
393
328
598
354
351
901
669
118
644
172
93
778
186
20
339
658
101
3
191
71
455
4
790
122
935
456
917
41
916
638
953
979
664
394
630
960
901
176
33
346
469
735
296
885
250
38
947
719
339
100
346
295
473
969
682
927
14
834
100
737
23
686
219
512
19
239
213
468
654
891
380
373
716
764
479
650
115
297
456
82
946
652
253
445
841
442
178
338
158
769
886
94
5
699
150
321
676
426
659
31
740
433
389
28
850
284
166
501
161
728
446
386
333
507
65
521
532
894
78
307
783
288
167
531
33
655
517
532
422
806
768
810
1
442
933
680
556
388
221
483
843
568
142
5
550
57
417
724
84
894
723
425
751
165
835
159
780
223
108
370
225
464
316
264
430
515
766
761
240
754
360
191
713
272
679
183
398
702
232
419
179
221
866
844
921
821
666
15
540
101
426
96
591
192
318
282
502
291
381
544
540
162
339
512
25
849
664
174
285
202
310
534
85
548
827
615
325
156
718
189
476
785
360
483
549
137
83
396
1000
15
880
483
941
86
345
930
203
863
684
413
512
755
940
737
113
145
32
393
92
111
523
63
542
283
647
286
776
669
500
380
940
443
270
386
477
60
922
679
816
969
963
194
561
480
577
31
766
585
976
822
983
933
9
824
711
782
976
802
837
385
446
451
80
783
685
3
468
551
413
136
993
751
348
344
97
588
182
404
104
145
464
702
499
439
288
769
814
438
838
839
702
352
775
389
370
347
419
936
375
131
453
342
353
339
252
604
539
801
551
293
795
980
340
303
91
734
785
192
194
197
442
562
943
28
443
79
283
850
269
708
145
57
954
273
892
383
185
561
178
122
309
964
294
29
106
322
747
943
323
635
999
399
701
56
273
218
26
230
22
435
55
912
959
56
460
478
872
667
789
954
251
871
395
927
484
207
400
362
646
558
628
986
508
952
72
271
708
859
10
966
500
801
528
615
310
129
66
828
206
736
128
733
18
983
885
610
259
232
237
965
278
279
709
320
227
446
686
37
255
454
175
84
582
129
372
409
571
891
952
626
453
238
898
335
819
965
542
805
209
305
858
59
430
189
93
673
186
384
695
251
707
450
447
236
924
789
186
701
394
442
713
69
232
614
114
637
102
177
933
555
144
955
859
100
228
555
436
265
633
37
322
541
175
942
584
896
756
940
783
155
767
544
69
424
639
77
20
666
34
561
400
978
961
301
812
464
2
129
212
194
177
500
236
740
231
203
294
685
715
297
308
622
991
20
292
267
602
112
629
803
973
239
230
899
161
557
158
14
466
289
588
450
167
33
172
929
960
21
680
553
606
823
907
456
175
281
312
906
469
4
260
840
587
919
152
634
783
647
6
649
543
633
474
748
798
533
897
760
126
284
637
172
778
560
158
493
80
479
229
786
103
760
976
980
375
788
742
946
826
223
175
744
493
612
161
985
977
681
277
131
977
685
393
974
209
571
620
710
79
142
540
251
413
428
679
912
621
950
643
306
835
49
137
533
671
151
256
831
958
310
347
125
344
472
463
936
899
36
672
519
278
97
151
144
452
110
779
671
253
367
499
95
323
218
600
771
447
362
835
980
572
615
964
21
25
592
671
858
85
872
374
603
707
354
47
5
762
469
120
141
434
421
535
622
386
344
241
430
822
770
598
32
293
271
627
108
704
846
967
48
745
18
22
675
350
747
467
190
543
961
760
89
318
787
541
421
640
81
265
491
79
136
649
286
974
376
717
915
1
55
233
226
980
12
71
548
502
319
520
229
859
136
544
607
361
350
745
382
628
164
113
897
949
450
646
549
726
115
956
348
471
935
643
540
482
199
500
614
831
81
236
68
237
666
146
780
444
633
42
310
669
309
340
631
182
894
58
109
495
536
285
869
205
536
574
934
116
519
149
679
540
109
16
836
119
762
706
851
816
263
101
448
884
252
389
360
883
805
725
421
30
724
981
232
108
402
41
438
712
127
709
523
799
147
485
636
698
796
211
691
986
140
540
546
133
55
59
768
124
609
39
954
853
237
63
10
545
741
291
460
209
131
611
635
736
84
981
915
750
723
4
680
986
713
289
424
407
324
349
123
771
50
130
687
109
753
23
491
857
751
644
410
844
856
905
855
940
370
402
615
910
889
131
586
407
333
575
782
716
625
659
598
737
627
530
304
668
857
34
126
741
399
567
25
195
950
414
47
526
704
95
464
142
187
632
393
370
121
29
351
511
572
3
239
314
918
492
413
156
962
34
626
64
891
83
20
106
497
844
730
455
586
520
746
973
900
287
180
110
141
772
788
695
127
882
315
693
35
327
457
726
564
260
50
814
499
326
967
661
351
814
729
956
206
450
409
571
352
253
492
849
234
232
854
109
767
741
502
975
121
927
949
306
45
619
798
571
116
316
604
836
423
226
133
5
754
132
113
487
763
119
677
592
902
249
559
747
516
202
880
201
264
126
401
749
115
573
550
471
988
369
665
657
912
873
103
567
14
838
502
566
450
591
552
708
974
853
272
322
209
676
516
559
434
174
924
323
324
826
650
218
893
847
105
366
81
712
621
960
726
456
890
823
931
373
576
395
504
831
320
850
842
595
256
675
938
51
273
675
816
660
810
792
318
763
287
649
432
374
448
957
33
403
817
118
286
707
624
666
831
308
81
278
491
10
265
35
504
685
356
551
6
686
4
968
897
302
502
979
667
56
915
4
81
890
647
354
964
777
850
839
420
720
578
436
173
947
499
996
124
528
449
81
66
808
374
688
142
655
463
342
477
212
876
152
772
41
41
553
601
505
753
221
158
718
12
901
696
669
964
359
890
305
589
952
775
277
264
251
992
12
476
386
888
452
873
202
678
768
453
405
807
635
726
130
716
224
23
645
562
175
165
142
675
631
886
371
80
633
927
297
948
875
991
916
816
794
821
565
463
667
238
451
955
145
110
61
566
650
809
60
485
593
452
484
583
67
644
783
385
688
300
559
746
660
218
442
636
210
870
133
948
474
259
610
339
996
735
997
297
190
29
662
225
95
225
658
202
933
809
672
379
350
378
976
552
386
177
553
826
887
641
633
426
248
915
471
800
606
724
600
494
776
236
75
667
512
433
169
902
641
426
617
533
726
726
719
953
947
415
749
436
345
168
800
884
208
173
707
527
561
607
382
701
606
928
979
787
547
288
884
773
493
535
332
362
660
672
34
482
337
120
412
300
572
840
355
921
708
11
380
850
850
201
60
408
878
70
732
703
107
864
989
373
2
106
53
496
137
370
47
595
158
674
555
94
86
730
836
693
375
804
496
526
205
423
798
313
47
112
211
568
472
146
240
656
53
342
973
389
945
3
241
100
157
786
953
777
378
506
534
800
960
977
39
102
668
312
807
823
909
511
121
711
357
396
16
962
325
185
478
621
131
791
464
890
325
748
891
129
997
869
454
950
861
625
291
574
779
502
669
353
866
233
506
873
142
969
230
804
524
500
337
558
281
309
863
436
617
687
806
679
364
425
565
836
236
893
954
385
596
94
802
985
380
696
537
685
966
686
652
278
36
402
3
203
801
314
142
45
763
27
721
364
798
587
203
554
384
311
79
338
258
120
254
595
952
813
398
371
594
760
684
53
948
241
479
928
209
650
932
964
311
169
883
233
609
748
591
881
529
48
244
878
844
207
415
940
892
383
484
774
761
188
705
330
355
207
151
347
163
706
829
575
25
568
453
540
281
95
966
909
929
232
158
449
97
107
999
684
234
752
870
294
939
378
380
140
255
136
918
452
554
691
815
298
553
563
133
872
816
31
544
725
229
590
641
880
360
287
219
300
750
577
602
56
215
470
67
41
620
803
735
108
676
59
625
876
445
627
460
841
482
800
607
28
30
617
506
468
978
91
899
608
681
164
155
220
89
762
520
20
756
386
624
496
532
340
126
3
309
501
318
964
957
660
554
922
777
955
846
59
724
390
592
350
561
173
882
561
871
357
443
578
937
315
284
866
506
400
599
813
386
407
232
402
270
432
566
305
146
780
299
948
994
235
299
372
302
451
212
805
213
690
360
614
349
596
1000
236
480
56
822
946
770
329
845
995
270
973
41
189
369
561
131
311
247
690
121
681
897
133
221
317
730
490
826
145
927
225
91
305
757
719
681
665
952
389
46
582
154
336
144
758
342
460
300
508
515
496
992
848
155
871
728
717
943
195
980
638
980
798
763
247
130
504
902
455
259
880
381
748
586
911
570
309
981
169
827
402
1000
155
670
864
665
322
386
94
594
703
78
621
784
730
443
88
812
267
648
166
996
50
702
646
31
432
212
492
537
300
120
138
967
499
53
15
918
209
988
26
175
452
934
665
17
604
716
296
627
386
486
125
525
724
580
40
658
364
558
232
879
6
304
318
936
243
151
137
704
805
71
78
254
687
823
673
311
543
291
331
472
601
295
714
285
485
284
653
630
70
970
72
921
560
563
77
32
640
127
516
847
539
885
6
183
990
845
753
482
257
125
603
30
64
969
876
80
623
956
388
799
249
199
651
670
465
762
305
434
913
367
285
603
904
288
888
862
34
725
376
413
993
299
431
929
33
96
179
586
955
596
123
899
348
239
618
377
138
581
745
759
107
863
601
356
758
489
909
74
596
147
799
750
756
520
716
261
775
896
247
889
748
668
210
241
579
692
134
881
236
247
901
245
370
88
144
839
542
643
820
277
401
996
909
574
74
239
454
341
324
98
565
595
213
851
653
506
802
494
901
228
828
313
50
291
116
276
787
227
820
389
544
663
41
850
110
591
935
422
403
243
288
532
61
700
690
295
931
996
817
912
479
489
660
273
751
723
946
727
264
554
691
126
250
632
79
935
696
585
628
110
628
868
866
794
847
6
83
34
356
109
517
98
648
99
485
817
769
557
444
612
549
931
757
313
4
479
121
622
639
585
873
496
606
808
148
622
265
245
159
159
364
286
481
855
400
703
839
250
881
639
703
147
94
501
168
476
968
321
84
977
208
544
418
643
227
634
968
348
655
897
449
731
356
919
168
708
625
137
875
806
435
522
651
277
746
901
394
843
977
647
833
351
610
916
499
952
148
62
156
991
974
752
227
458
775
830
699
217
477
662
67
804
935
98
865
940
76
35
817
787
66
20
131
626
484
199
105
898
563
749
950
715
573
577
332
611
429
798
934
419
466
796
857
436
713
235
376
874
130
84
552
190
225
258
447
610
852
747
466
426
481
630
874
904
765
789
298
352
222
810
992
487
47
531
458
593
179
8
241
421
912
917
69
842
258
794
538
828
240
471
992
220
374
668
666
320
545
811
538
271
858
653
505
509
936
223
564
844
834
932
468
289
191
558
255
733
124
432
420
996
516
368
657
789
103
230
446
532
809
507
994
263
883
499
311
201
841
538
807
897
408
411
95
954
272
426
822
114
186
676
378
535
740
15
833
537
247
122
863
962
444
77
320
97
672
507
224
167
284
831
341
327
80
266
641
410
486
477
350
777
305
838
858
271
358
875
768
92
713
441
497
238
778
917
698
529
553
357
155
140
961
805
873
722
724
988
747
406
504
613
173
456
398
304
369
544
674
128
250
3
761
214
489
698
212
530
837
895
542
54
975
749
637
715
267
453
296
580
742
784
321
209
878
680
493
201
471
327
851
552
757
20
72
75
129
802
293
139
549
112
368
586
871
763
759
332
97
10
511
584
934
409
739
941
785
52
160
668
293
801
429
488
946
514
592
870
609
295
636
14
586
626
612
64
693
353
492
343
419
795
467
650
724
848
941
840
345
161
905
833
40
820
298
548
999
640
231
679
970
28
659
520
421
703
542
426
989
300
854
71
165
218
903
36
45
267
240
712
711
815
633
18
344
774
707
766
84
69
51
774
689
320
673
853
107
994
160
33
644
843
615
620
851
324
184
594
621
338
434
227
177
935
374
633
366
300
880
301
568
946
345
385
743
239
760
756
665
520
307
304
343
838
924
499
458
333
895
156
638
711
298
650
930
11
605
521
583
810
99
256
837
131
749
529
846
266
14
795
973
109
111
823
653
237
860
35
434
570
51
109
108
391
84
337
307
467
436
36
128
86
765
135
19
929
38
898
959
275
36
356
132
387
600
264
109
541
853
928
609
735
899
272
162
105
731
222
715
598
29
747
79
515
681
889
978
151
230
119
93
478
389
600
430
363
541
478
875
432
963
916
544
19
85
641
603
250
375
35
189
476
424
677
450
234
905
993
212
37
769
832
732
14
205
162
410
334
186
231
887
249
437
912
178
271
182
549
709
223
613
8
441
898
686
571
624
297
252
317
653
831
300
417
367
321
985
350
811
511
44
345
845
162
86
649
30
164
489
895
991
806
74
602
830
861
12
351
969
307
332
955
836
55
110
500
196
843
143
727
277
990
15
176
491
761
156
6
802
950
854
701
775
592
755
269
52
297
817
513
983
987
556
980
796
501
157
549
34
660
859
501
936
744
918
547
221
697
471
164
15
367
882
186
20
927
26
83
29
262
919
90
809
368
338
735
863
102
22
456
708
928
942
826
780
305
703
780
370
395
108
916
455
74
594
9
22
932
907
664
605
257
906
970
88
113
826
670
147
988
418
79
521
56
835
280
645
293
97
626
696
449
231
421
798
488
424
766
326
816
399
876
792
493
383
457
848
527
733
977
592
868
178
527
431
249
335
414
244
75
78
915
395
775
651
13
871
567
286
561
721
230
442
90
930
877
242
102
994
698
781
458
216
111
908
108
896
251
405
742
239
400
517
905
642
401
469
729
574
587
852
46
154
695
651
880
245
228
356
65
123
758
757
956
549
390
567
165
877
272
257
788
764
740
515
17
528
845
248
771
16
302
604
198
35
252
162
513
810
499
419
717
780
536
13
319
56
192
110
974
730
982
893
891
884
3
933
338
81
858
277
769
875
950
705
905
747
522
27
518
890
817
890
253
551
523
745
666
262
445
4
203
592
995
52
753
963
340
212
453
200
123
246
909
239
523
846
111
480
507
989
527
428
460
180
731
762
802
945
730
787
413
295
805
127
30
410
203
875
938
952
60
893
26
614
122
671
222
122
785
842
254
622
745
659
410
794
487
968
999
407
436
472
21
413
637
246
839
596
598
440
640
561
650
570
682
64
398
986
833
21
336
158
67
757
82
960
572
258
30
13
464
264
644
760
294
356
305
146
625
587
6
649
606
533
125
890
5
751
382
180
601
203
109
634
319
289
145
243
765
413
271
28
506
324
141
525
699
522
909
647
883
902
15
656
542
754
774
421
141
320
72
743
140
312
129
40
906
670
123
54
439
734
686
396
725
692
580
737
307
415
249
505
274
99
300
32
56
20
30
712
273
260
399
144
415
100
982
810
248
210
234
679
398
126
927
691
315
620
448
164
411
500
760
66
648
372
764
485
86
82
634
171
967
477
227
579
266
105
534
74
211
882
125
994
9
184
404
700
647
602
519
90
206
332
904
479
589
951
508
927
294
157
120
628
527
889
318
841
501
260
384
209
145
570
14
225
518
434
320
387
365
127
572
829
317
587
669
706
544
609
708
830
53
566
766
882
195
413
919
357
402
191
150
703
351
508
906
512
748
627
485
833
542
16
280
357
622
911
404
776
734
557
257
629
882
504
653
289
618
617
761
917
47
675
36
332
644
687
595
647
279
512
36
723
263
131
663
255
26
456
630
526
302
712
146
845
226
474
653
719
696
559
28
832
945
52
651
965
517
881
1000
914
73
804
741
177
677
145
490
499
158
640
916
186
913
973
876
646
753
103
254
207
196
970
544
243
359
2
813
258
441
433
943
361
341
940
784
414
863
586
365
219
955
122
398
317
961
971
861
746
587
697
609
845
317
545
820
239
333
454
46
947
641
697
713
422
783
963
302
94
786
734
870
310
853
673
252
740
354
999
367
732
504
648
502
659
306
936
804
322
648
535
981
893
444
68
649
267
758
101
780
353
852
209
736
327
217
173
621
738
504
830
186
23
684
730
258
350
590
588
920
621
870
904
283
160
515
310
110
572
620
752
398
606
461
421
652
272
804
980
975
63
117
36
921
369
803
494
505
321
774
540
736
642
601
739
871
935
468
838
787
732
996
434
614
15
918
492
38
344
598
786
424
849
642
389
401
869
294
281
75
370
547
208
505
837
104
878
24
390
827
621
40
347
492
844
341
329
499
864
717
93
557
47
733
814
148
708
257
247
36
850
620
214
567
744
881
601
543
237
800
557
196
869
36
264
963
581
528
330
335
556
266
307
192
599
427
20
595
413
948
489
390
755
172
756
968
704
145
826
466
939
289
696
238
954
53
451
765
878
608
2
535
338
644
461
996
278
343
616
19
962
312
628
115
133
726
726
269
87
711
785
925
402
200
604
476
835
880
307
946
666
926
709
990
603
16
705
234
797
257
207
146
186
681
158
388
174
64
725
971
905
731
642
359
148
379
47
114
851
269
347
324
811
838
887
560
177
798
579
447
893
956
838
940
261
972
400
616
997
896
962
410
245
192
554
914
28
86
304
850
581
605
920
970
799
26
705
722
871
543
842
55
729
291
757
500
587
684
743
32
840
497
184
403
402
470
450
488
56
7
145
965
599
938
936
185
512
246
364
139
610
851
100
92
258
799
714
78
287
451
146
271
56
547
219
667
132
463
118
455
607
290
886
900
185
736
280
599
300
849
880
887
640
773
323
424
774
652
845
45
626
335
433
117
837
387
614
103
617
679
899
174
302
51
318
899
391
235
187
651
903
444
755
335
175
961
662
124
639
759
712
78
510
611
456
504
686
894
321
342
729
816
707
845
949
989
676
332
424
37
26
108
185
119
886
519
675
919
249
192
51
824
904
136
129
527
385
58
559
57
48
223
120
822
927
107
224
116
696
786
453
588
119
914
924
813
671
655
136
474
420
714
119
528
141
797
309
977
896
67
356
744
277
85
448
24
302
179
8
39
531
222
324
47
909
616
335
805
154
454
170
792
395
683
108
332
981
380
754
188
714
486
892
316
962
861
498
433
412
85
445
953
350
710
63
33
352
84
396
259
34
950
404
982
78
726
360
519
942
703
903
887
858
524
690
310
749
500
977
303
895
138
782
854
781
820
576
561
548
723
605
890
391
168
460
158
211
65
340
254
175
833
13
700
828
230
88
116
367
857
47
999
555
459
722
654
698
135
170
665
295
761
474
415
736
642
636
369
49
120
253
833
953
262
663
363
479
625
77
502
600
113
513
84
415
629
353
44
50
317
899
953
162
326
948
512
864
525
720
472
400
71
865
578
170
516
136
77
848
690
250
700
942
114
651
101
612
378
327
706
123
628
294
914
709
642
866
965
613
933
729
860
270
751
139
81
21
840
828
348
859
912
91
440
395
416
360
543
982
914
262
314
621
850
481
626
702
518
66
934
2
447
88
482
888
687
713
407
266
474
426
47
686
549
644
619
581
465
478
867
239
959
675
539
561
970
999
12
978
29
571
584
149
671
479
289
328
450
785
839
156
383
915
693
372
535
937
631
844
707
895
605
729
536
296
96
845
240
349
716
37
64
412
861
141
236
663
631
406
516
343
398
10
807
934
738
426
361
396
553
423
850
40
487
571
240
12
357
859
675
808
870
281
195
916
562
542
207
103
884
273
808
956
658
463
819
679
366
577
448
877
383
248
671
311
140
116
587
192
267
811
318
882
510
940
159
437
880
193
764
100
431
764
912
4
94
718
936
336
879
462
16
403
621
887
764
146
485
506
829
351
778
80
700
233
33
690
635
390
684
846
187
999
738
329
374
462
38
78
505
135
372
691
38
871
551
862
561
281
864
954
225
271
118
547
923
676
528
173
584
62
965
564
553
806
666
7
593
997
77
281
970
160
838
27
531
146
401
832
327
282
474
616
509
200
351
399
741
77
16
603
26
183
220
881
489
529
435
67
364
972
24
840
289
801
635
346
12
294
951
16
99
411
170
109
513
846
348
512
480
937
56
404
260
149
168
559
385
437
865
229
521
295
484
570
530
653
843
173
964
809
231
774
283
450
628
444
187
621
484
599
217
381
689
257
421
668
762
58
146
588
253
435
426
431
662
116
997
610
941
184
559
373
765
927
242
999
677
57
552
415
406
945
793
212
414
250
731
506
437
277
231
322
514
299
697
825
616
361
66
763
158
434
36
431
786
629
550
955
823
190
14
889
687
225
300
181
69
763
430
429
356
134
371
863
127
961
595
974
628
389
88
817
161
60
555
312
111
180
406
713
355
787
104
431
678
727
916
660
664
35
821
407
573
138
711
554
311
946
799
539
956
197
432
265
631
271
628
445
772
364
99
480
902
204
449
519
945
197
875
100
576
429
95
415
956
438
885
498
540
890
586
569
771
171
639
495
730
525
698
862
169
326
318
617
204
137
238
145
116
70
473
931
432
324
719
311
638
177
981
392
87
375
182
821
939
313
139
388
309
914
355
790
330
77
321
425
800
68
613
501
29
294
272
75
332
732
31
901
212
107
306
887
927
686
169
1
362
895
153
395
81
855
830
808
711
36
80
282
892
44
186
120
588
19
468
610
448
514
903
181
576
243
890
537
721
187
744
66
3
846
295
711
746
1
882
27
23
819
871
159
539
23
938
375
257
610
547
351
907
844
848
517
541
23
308
429
135
830
333
234
564
161
15
265
714
191
5
757
769
804
267
381
164
627
906
375
140
927
496
832
2
740
851
183
920
392
534
938
485
320
342
495
924
776
138
162
188
37
869
40
946
194
252
319
904
216
954
173
447
881
438
916
97
957
980
320
214
559
818
746
458
898
534
460
764
767
345
426
488
866
819
822
17
566
22
574
506
375
995
496
932
271
242
618
480
541
785
726
329
319
323
986
59
255
908
145
170
992
767
223
577
817
71
895
595
224
202
585
848
176
242
693
173
145
813
512
541
47
656
722
610
323
683
99
279
323
410
503
221
531
955
927
454
287
656
913
395
664
625
115
495
62
145
444
698
347
541
383
608
579
611
306
883
813
923
822
894
671
594
459
339
308
735
606
965
838
971
932
586
732
701
530
297
490
546
657
871
929
236
301
229
933
46
855
36
744
970
247
950
331
568
796
903
984
518
921
723
592
826
563
211
289
82
95
295
627
451
870
387
499
683
390
249
999
313
54
708
382
127
416
300
156
182
317
590
984
892
344
199
994
7
556
145
484
630
734
487
373
328
730
735
658
70
371
736
467
680
742
84
22
86
462
435
788
531
61
312
781
67
760
232
381
418
131
146
742
115
749
471
632
909
916
487
214
682
533
263
47
583
339
812
790
704
869
400
873
29
883
129
539
287
982
512
25
641
347
331
4
981
731
12
230
82
549
192
348
75
374
570
297
520
822
250
983
269
818
417
491
55
340
763
845
624
443
878
80
835
644
944
396
775
919
205
723
459
674
243
776
332
186
614
930
106
778
234
592
52
556
408
426
644
741
377
522
957
610
331
917
764
547
656
462
145
213
55
247
887
328
479
296
340
47
119
595
719
225
590
352
692
757
687
336
278
129
260
401
649
910
162
726
260
584
685
535
228
799
811
947
118
545
825
340
31
705
242
212
136
364
241
658
506
164
505
568
43
664
619
381
988
343
887
569
555
238
593
846
873
557
363
796
638
697
193
515
361
662
937
51
281
964
816
672
592
131
304
989
466
5
514
563
721
263
607
3
877
753
222
409
902
785
584
208
894
232
755
909
439
633
65
405
44
644
667
737
737
504
644
984
880
608
161
231
740
335
394
478
55
654
409
798
79
518
118
930
967
402
318
961
790
648
471
433
785
894
760
485
878
29
801
695
355
539
329
313
336
62
253
765
137
951
822
566
932
955
444
452
212
218
76
271
764
94
53
709
558
920
511
195
58
730
750
924
634
33
906
252
264
918
226
831
45
11
32
14
288
130
163
509
913
822
339
447
716
455
404
497
232
272
715
998
787
838
914
662
148
83
173
598
474
816
813
489
659
591
220
305
42
680
396
841
460
45
607
390
542
437
236
270
813
838
868
113
271
863
828
371
225
238
733
296
321
754
729
690
162
157
764
989
453
566
11
725
566
728
384
141
666
528
728
764
535
52
562
200
841
87
441
689
2
41
421
171
126
282
191
94
487
648
736
784
485
307
301
461
269
82
664
414
261
514
532
825
824
880
37
146
248
627
78
60
521
165
489
184
120
60
766
291
621
861
727
550
383
215
980
70
549
638
263
900
180
233
874
842
629
254
741
532
643
459
174
346
440
552
210
874
175
354
152
550
655
245
231
739
240
682
838
965
956
572
763
51
829
949
557
430
44
97
685
297
890
953
616
26
548
323
39
941
893
703
742
854
452
773
336
863
261
676
449
331
265
606
424
852
485
231
592
935
977
519
1
678
418
837
12
429
569
465
149
919
794
509
187
382
394
255
138
16
319
509
212
644
644
644
836
83
208
739
875
702
34
723
666
619
620
217
941
509
294
737
141
745
981
667
469
965
638
586
622
219
537
846
514
969
747
10
996
666
643
369
357
335
471
664
631
121
155
130
89
742
983
339
605
841
245
663
502
570
885
691
654
386
293
318
426
53
465
822
998
995
870
692
481
367
70
11
531
460
703
69
402
862
190
620
515
917
47
610
885
269
743
528
311
802
862
604
196
430
255
299
963
487
489
498
820
2
516
974
755
486
140
796
575
289
259
460
347
681
283
449
366
302
827
692
591
850
727
185
774
297
638
547
348
31
208
144
864
233
621
571
593
812
471
4
970
717
636
98
119
7
188
412
71
412
826
390
766
311
801
584
140
36
285
128
134
873
403
450
422
854
447
224
873
965
738
246
319
963
648
187
405
567
369
995
403
92
48
420
938
680
330
731
524
517
743
503
716
561
495
37
320
832
337
861
175
909
637
8
799
971
691
398
774
992
71
130
536
301
416
641
670
336
461
362
638
475
606
996
760
534
752
745
583
441
731
369
724
110
522
199
769
208
21
613
180
814
659
94
390
245
500
703
104
353
784
289
886
455
263
837
937
332
231
636
59
769
985
155
648
349
34
189
955
9
252
556
79
4
914
139
713
983
612
7
613
372
640
460
63
616
586
479
932
29
617
443
631
686
414
72
869
123
518
67
459
982
956
401
78
529
843
939
775
959
621
361
436
884
30
288
984
608
96
429
338
655
400
323
758
537
260
781
347
453
243
148
470
383
344
254
194
682
421
856
730
377
470
78
512
755
103
577
694
867
972
848
860
765
670
444
691
714
502
598
917
890
765
194
643
20
408
694
537
177
558
706
797
61
410
462
172
296
453
123
917
839
110
737
909
784
688
242
40
136
900
446
872
893
64
923
939
496
135
20
812
290
797
172
285
434
540
266
8
893
749
662
219
410
935
970
116
163
763
167
174
351
587
39
249
226
972
710
502
934
917
501
58
211
556
455
455
596
299
511
479
386
200
243
178
85
741
766
331
984
916
491
344
602
988
598
476
470
153
603
104
708
767
970
418
417
740
825
317
931
244
563
410
25
426
270
918
442
64
648
271
74
363
506
217
292
622
466
625
452
168
9
952
32
247
843
956
889
516
786
328
359
970
621
416
320
241
195
213
830
214
401
430
200
878
577
553
663
431
93
661
104
523
917
94
138
523
361
172
245
217
899
206
645
830
301
234
969
17
355
659
231
993
867
49
424
296
780
971
636
376
253
356
933
559
119
605
96
146
66
492
871
81
305
685
540
14
425
563
836
704
988
900
495
301
44
500
739
44
104
307
839
104
383
154
60
394
635
291
914
313
21
630
499
87
571
899
112
975
273
864
938
980
153
737
863
98
761
793
611
998
561
930
225
813
698
831
746
715
196
848
952
591
457
262
700
827
563
350
47
704
211
610
757
548
591
242
592
790
510
842
259
272
21
767
828
4
573
210
111
95
466
709
849
300
138
138
865
730
207
69
315
45
751
513
722
947
680
889
496
528
604
349
514
282
919
547
340
899
339
575
345
566
70
481
883
294
299
792
630
290
90
469
624
973
253
491
12
394
89
506
375
477
534
867
967
671
357
511
291
992
385
853